1、实验5 数组一维数组 淮海工学院计算机科学系实验报告书课程名: C语言程序设计A 题 目: 实验5 数组一维数组 班 级: 软嵌151 学 号: 2015123349 姓 名: 陈正宁 1、 实验内容或题目(1)从键盘输入10个整数,输出去掉其中最大的两个数,求剩余数据的平均值。(2)从键盘输入10个整数,分别用选择和冒泡排序对这10个数进行排序。(4)输入一个整数,在一个有序数列中使用折半查找法查找是否存在该整数。(5)有a,b,c,d和e共5个不同的 球,准备分给甲、乙、丙、丁和戊5个小朋友。已知小朋友甲不用a球,小朋友乙不要b球,小朋友丙不用c求。编写程序求共有多少种不同的分法。2、实验
2、目的与要求(1)掌握一维数组的定义和输入输出的方法。(2)掌握与数组有关的算法,如排序、查找。3、 实验步骤与源程序 实验步骤(1)、 (2)、选择排序: 冒泡排序:(4)、(5)、 源代码(1)、#includevoid main() int a10; int i,k,j,temp; double p,sum=0; printf(请输入10个整数:n); for(i=0;i10;i+) scanf(%d,&ai); for(i=0;i9;i+) k=i; for(j=i+1;j10;j+) if(ajak) k=j; if(k!=i) temp=ai; ai=ak; ak=temp; pri
3、ntf(去掉其中最大的两个数后余下的整数:n); for(i=0;i8;i+) sum+=ai; printf(%d ,ai); p=sum/8; printf(n); printf(剩余数据的平均值为:n%lfn,p);(2)、#includevoid main() printf(下面使用选择排序:nn); int a10; int i,j,t,k; printf(请输入10个待排序的整数:n); for(i=0;i9;i+) scanf(%d,&ai); printf(n); for(i=0;i10;i+) k=i; for(j=i+1;jak) k=j; if(k!=i) t=ai; a
4、i=ak; ak=t; printf(排序后的整数为:n); for(i=0;i10;i+) printf(%d ,ai); printf(n);#includevoid main() printf(下面使用冒泡排序:nn); int a10; int i,j,t; printf(请输入10个待排序的整数:n); for(i=0;i10;i+) scanf(%d,&ai); printf(n); for(j=0;j9;j+) for(i=0;iai+1) t=ai; ai=ai+1; ai+1=t; printf(排序后的整数为:n); for(i=0;i10;i+) printf(%d ,a
5、i); printf(n);(4)、#includevoid main() int a10=0,1,2,3,4,5,6,7,8,9; int low=0,high=9; int mid,k; printf(请输入您想查找的数k:); scanf(%d,&k); while(low=high) mid=(low+high)/2; if(k=amid) break; if(kamid) high=mid-1; else low=mid+1; printf(n); if(low=high) printf(查到这个数!nn您想查找的数%d 是数组的第%d个元素n,k,(low+high)/2+1);
6、else printf(查无此数!n);(5)、#includevoid main() int a,b,c,d,e,count=0; int x6,i; for(i=1;i=5;i+) xi=1; for(a=1;a=5;a+) if(xa=1) xa=0; for(b=1;b=5;b+) if(xb) xb=0; for(c=1;c=5;c+) if(xc) xc=0; for(d=1;d=5;d+) if(xd) xd=0; for(e=1;e=5;e+) if(xe) xe=0; if(a!=1&b!=2&c!=3) count+; xe=1; xd=1; xc=1; xb=1; xa=1; printf(有%d种不同的分法。n,count);4、 测试数据与实验结果(可以抓图粘贴)(1)、(2)、(4)、(5)、5、 结果分析与实验体会(1)、数组是一组有序数据的集合,数组中的每一个元素都属于同一个数据类型。数组常与循环结合起来。(2)、对于数组中的经典算法理解后也用适当记忆。如有关排序的算法。(3)、对于一些实际问题,要善于抽象成C语言的题目。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1