复习题一及答案27251.docVIP

  • 47
  • 0
  • 约1.02万字
  • 约 10页
  • 2016-08-17 发布于重庆
  • 举报
复习题一及答案27251

一、填空题 1.计算学生的平均成绩和不及格的人数. Struct stu { int num; char *name; char sex; float score; }; main() { ______ student[5]={ {101,Li ping,M,45}, /*$BLANK1$*//* struct stu*/ {102,Zhang ping,M,62.5}, {103,He feng,F,92.5}, {104,Cheng ling,F,87}, {105,Wang ming,M,58}, }; int i,c=0; float ave,s=0; for(i=0;i5;i++) { s+=_____; /*$BLANK2$*//*student[i].score;*/ if(____60) c++; /*$BLANK3$*//* student[i].score*/ } ave=s/5; printf(average=%f\n count=%d\n,ave,c); } 2.完善程序,使5×5数组的对角线元素为1,其它为0,即输出5×5的对角矩阵. #includestdio.h main() {int j,k,a[5][5]; for(j=0;j5;j++) for(k=0;k5;k++) {if(___) /*$BLANK1$*//* k= =j*/ _____ /*$BLANK2$*//* a[j][k]=1*/ else_____ ; /*$BLANK3$*//* a[j][k]=0*/ } for(j=0;js;j++) {for(k=0;k5;k++) printf(%d,a[j][k]); printf(\n); }} 3.编制函数acopy(), 将数组a的内容复制到b数组中(以-999作结束标志),程序未完成,请填空. #includestdio.h void acopy(____) /*$BLANK1$*//* void acopy(int a[],int b[])*/ {int i=0; while(a[i]!=-999) {____ ; /*$BLANK2$*//* b[i]=a[i]*/ i++;} b[i]=a[10];} main() {static int a[]={1,3,5,7,9,2,4,6,8,10,-999}; int b[80],i=0; ____ ; /*$BLANK3$*//*acopy(a,b) */ while(b[i]!=-999) printf(%d,b[i++]);} 4.以下程序用函数的递归调用打印n的阶乘值,请填空. Long fac(int n) { long f; if(n0) printf(n0,data error); else if(n= =0||n= =1) f=1; else f=____ /*$BLANK1$*//* else f=n*fac(n-1);*/ ______ ; } /*$BLANK2$*//* return(f);*/ main() {int n; long y; printf(input a integer number:); scanf(%d,n); y=____ ; /*$BLANK3$*//* y=fac(n);*/ printf(%d!=%ld,n,y); } 5.有一个3×4的矩阵,要求编程以求出其中最大的那个元素,以及它所在的行号和列号.程序如下: main() {int i,j,row,col,max; static int a[3][4]={{3,5,1,8},{6,4,11,7},{9,3,10,2}}; max=___ ; /*$BLANK1$

文档评论(0)

1亿VIP精品文档

相关文档