资源描述:
《第8章数组类型习题及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、8-1编写程序,将10个数34,3,29,63,70,16,85,82,90,93存放于一组数组中,求出这十个数的和及平均值。解:#include"stdio.h"voidmain(){inta[10]={34,3,29,63,70,16,85.82,90,93};inti,sum=0;floataverage;for(i=0;i<10;i++){sum=sum+a[i];}average=sum/10.0;printf("sum=%d,average=%f",sum,average);}运行结果:sum=565,average=56.5000思考
2、:数组有何特点?此问题如果不用数组进行处理将会怎样?8-2编写程序,求存放于上题数组中10个数的最大值,最小值及所在的位置。解:#include"stdio.h"voidmain(){inta[10]={34,3,29,63,70,16,85,82,90,93};inti,sum,max,min,d_max,d_min;max=min=a[0];d_max=d_min=0;for(i=1;i<10;i++){if(a[i]>max){max=a[i];d_max=i;}if(a[i]3、x=%d,a[%d]",max,d_max);printf("min=%d,a[%d]",min,d_min);}运行结果:max=93,a[9]Min=3,a[1]思考:数组a[i]中i的变化意味着什么?8-3编写程序,从键盘读入50个数存放于一数组中,求出该数组中最大值、最小值及所在位置。解:#include"stdio.h"voidmain(){floata[50],max,min;inti,d_max,d_min;for(i=0;i<50;i++)scanf("%f",&a[i]);max=min=a[0];d_max=d_min=0;
4、for(i=1;i<50;i++){if(a[i]>max){max=a[i];d_max=i;}if(a[i]5、;i++)scanf("%f",&a[i]);/*按升序排序*/for(i=0;ia[j]){t=a[i];a[i]=a[j];a[j]=t;}printf("%8.2f",a[i]);}printf("");/*按降序排序*/for(i=0;i6、解数组的特点。)8-5编写程序,从键盘输入某班学生C语言课程考试成绩,评定每个学生C语言成绩等级。如果高于平均分10分,则等级为优秀;如果低于平均分10分,则等级为一般;否则等级为中等。解:#include"stdio.h"#defineN3voidmain(){inti,j;floataverage,a[N],sum=0;for(i=0;iaverage+10)printf("a[%d]优秀
7、",i);elseif(a[i]8、anf("%f",&a[i][j]);for(j=0;j