15.以下程序的功能是:按顺序读入 10 名学生 4 门课程的成绩,计算出每位学
生的平均分并输出,程序如下:
main()
{ int n,k;
float score ,sum,ave;
sum=0.0;
for(n=1;n<=10;n++)
{ for(k=1;k<=4;k++)
{ scanf(“%f”,&score); sum+=score;}
ave=sum/4.0;
printf(“%d%f\n”,n,ave);
}
}
上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。
这条语句是
A) sum=0.0;
B) sum+=score;
C) ave=sum/4.0;
D) printf(“%d%f\n”,n,ave);
二、填空题(每空 3 分,共 21 分)
1、设有定义:int n,*k=&n;以下语句将利用指针变量 k 读写变量 n 中的内容,请
将语句补充完整。
scanf(“%d, ” );
printf(“%d\n”, 。);
2、以下程序运行后的输出结果是 。
main()
{ int x=10,y=20,t=0;
if(x==y)t=x;x=y;y=t;
printf(“%d,%d \n”,x,y);
}
3、以下程序运行后的输出结果是 。
main()
{ int x=15;
while(x>10 && x<50)
{ x++;
if(x/3){x++;break;}
else continue;
}
printf(“%d\n”,x);
}
4、有以下程序:
#include <stdio.h>
main()
{ char c;
while((c=getchar( ))!=’?’) putchar(--c);
}
程序运行时,如果从键盘输入:Y?N?<回车>,则输出结果为 。
第 3 页(共 4
页)
B 卷