您好,欢迎访问三七文档
C语言编程练习题//6.1统计一维数组中小于数组元素平均值的元素的个数。//已知一维数组的值为{10,30,25,66,78,9,21,6,42,22}//#includestdio.h#defineN10main(){inti,s;inta[N]={10,30,25,66,78,9,21,6,42,22};floatave;printf(\n6.1统计一维数组中小于数组元素平均值的元素的个数。\n);printf(已知一维数组的值为{10,30,25,66,78,9,21,6,42,22}\n);for(i=0,s=0;iN;i++)s+=a[i];ave=(float)s/N;for(i=0,s=0;iN;i++)if(a[i]ave)s++;printf(统计出小于数组平均值(%.1f)的元素的个数=%d。\n,ave,s);}//main()—End//6.2从键盘输入4个学生3门课的成绩至数组中,并求出每个学生3门课的平均成绩。//#includestdio.h#defineM4#defineN3floataverage(float*p,intn)/*求平均分的函数*/{floatsum=0.;inti;for(i=0;in;i++)sum=sum+*(p+i);return(sum/n);}voidmain(){floatscore[M][N],ave[M];/*定义数组score[4][3]用来放4个学生3门课成绩*/inti,j;printf(\n6.2从键盘输入4个学生3门课的成绩至数组中,并求出每个学生3门课的平均成绩。\n);for(i=0;iM;i++){printf(输入第%d个学生的%d门课的成绩:,i+1,N);for(j=0;jN;j++)scanf(%f,&score[i][j]);printf(\n);}for(i=0;iM;i++){ave[i]=average(score[i],N);printf(第%d个学生的平均分为:%.2f\n,i+1,ave[i]);}}//main()--End//6.3编写程序求两个4*4矩阵相加的和。//#includestdio.hvoidmain(){inta[16],b[16],shuzhu1[4][4],shuzhu2[4][4],shuzhu3[4][4],i,j;printf(\n6.3编写程序求两个4*4矩阵相加的和。\n);printf(pleaseentershuzhu1:\n);for(i=0;i16;i++)scanf(%d,&a[i]);for(j=0;j16;j++)shuzhu1[0][j]=a[j];printf(shuzhu1:\n);for(i=0;i4;i++){for(j=0;j4;j++)printf(%4d,shuzhu1[i][j]);printf(\n);}printf(pleaseentershuzhu2:\n);for(i=0;i16;i++)scanf(%d,&b[i]);for(j=0;j16;j++)shuzhu2[0][j]=b[j];printf(shuzhu2:\n);for(i=0;i4;i++){for(j=0;j4;j++)printf(%4d,shuzhu2[i][j]);printf(\n);}printf(shuzhu1+shuzhu2:\n);for(i=0;i4;i++){for(j=0;j4;j++){shuzhu3[i][j]=shuzhu1[i][j]+shuzhu2[i][j];printf(%4d,shuzhu3[i][j]);}printf(\n);}}//main()—End//6.4输入一串字符,计算其中空格的个数//#includestdio.hmain(){charc[30];inti,sum=0;printf(\n6.4输入一串字符,计算其中空格的个数.\n);gets(c);for(i=0;istrlen(c);i++)if(c[i]=='')sum=sum+1;printf(空格数为:%d\n,sum);}//6.5青年歌手参加歌曲大奖赛,设有11个评委对他演唱后进行评分,//记分方法是:去掉一个最高分和一个最低分后再求出剩下的评委给出//的分数的平均分作为歌手的得分,试编程求他的最后得分。#includestdio.h#defineN11main(){inti,j,min;floattemp,ave=0;floata[N];printf(\n输入评委所打的分数:\n);for(i=0;iN;i++)scanf(%f,&a[i]);for(i=0;iN-1;i++){min=i;for(j=i+1;jN;j++)if(a[min]a[j])min=j;temp=a[i];a[i]=a[min];a[min]=temp;}for(i=1;iN-1;i++)/*注意i值的变化范围*/ave=ave+a[i];ave/=(N-2);printf(去掉一个最低分%-6.1f,最高分%-6.1f,a[0],a[N-1]);printf(选手所得最后分数:%6.1f,ave);printf(\n);}//main()—End
本文标题:C语言编程练习题
链接地址:https://www.777doc.com/doc-6663719 .html