五、程序阅读题(本大题共5小题,每小题12分,共60分) 78.阅读下列程序,将有关问题的答案填写在题78答题处。
(1)#include
(7) printf("%d,a=%d\\n",b,a); (8) }
(9)void main( ) (10){ int i=1; (11) do
(12) { sub(NUM-i); (13) i++;
(14) }while(i<=3); (15)}
题78答题处
①____________________
②____________________
③____________________
④____________________
上述程序中,变量b是__①__储类型变量,这种类型变量在程序开始运行而非调用时就给分配内存;第1次调用函数sub时的实参值是__②__,调用程序结束后,将执行第__③__行的语句;程序运行中,当b=3时,a=__④__。
79.阅读下列程序,将运行结果填写在题79答题处。
#include
{ switch(i%2)
{ case 1:i--;break; case 0:i--;continue; }
16
i=i-2;
printf("i=%d\\n",i ); }while(i>0); }
题79答题处
________________________
17
80.阅读下列程序,将运行结果填写在题80答题处。 #include
char s[]="+++"; for(i=3;i<7;i++) { for(j=1;j
printf("\\n"); } }
题80答题处
________________________
81.下列程序实现的是对某班级的一门课成绩按降序排列,同时计算成绩平均值,并将排序及计算结果打印输出。试在题81答题处填写合适的内容。
#include
int temp,sum=0; int __①__,score[N]; float ave =0. 0; /*1-输入数据*/
for(i=0;1 { scanf("M",&no[i]); scanf("M",&score[i]); } /*2~显示排序前学号及成绩*/ printf("学号 成绩\\n"); 18 题81答题处 ①______________________ ②______________________ ③______________________ ④______________________ for(i=0 __②__;i++) { printf("M,M\\n",no[i],score[i]); } printf("\\n"); /*3-成绩排序*/ for(i=0;i { temp=no[i];no[i]=no[j];no[j]=temp; temp=score[i];score[i]=score[j];score[j]=temp; } } /*4-计算平均值及打印输出*/ printf("学号成绩\\n"); fnr(i=0;i { printf("M,M\\n",no[i],score[i]); sum=sum+__④__; } ave=(float)sum/N; printf("\\n"); printf("班级平均成绩:%5.2f\\n",ave); } 82.下列程序的功能是分别统计文件中可显示字符及空白(空格、制表)符个数,试在题82答题处填写合适的内容。 #include int white=0; /*空白符计数器*/ 19 int count=0; /*可显示字符计数器*/ /*1-建立文件*/ if((fp=__②__ ("file.dat", "w"))= =NULL) exit(0); while((ch=getchar())! ='\\n') fputc(ch,fp); fclose(fp); /*2-打开文件*/ if((fp=fopen("file.dat", "r"))= =NULL) { printf("不能打开文件!"); exit(1); } 题82答题处 ①______________________ ②______________________ ③______________________ ④______________________ 20