问题 单项选择题

以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每个学生的平均分数并输出,程序如下: #include<iostream> using namespace std; int main( ) {int n,k;float score,sum,ave;sum = 0.0;for(n = 1;n <=10; n++){ for(k =1;k<=4;k++) {cin>>score;sum += score; } ave=sum/4.0; cout<<"NO."<<n<<"ave:"<<ave<<end1; } return 0; } 上述程序运行后结果不正确,调式中发现有一条语句出现在程序中的位置不正确。 这条语句是非曲直( )。

A.sum=0.0;

B.sum+=score;

C.ave= sum/4.0

D.cout<<"N"<<n<<"ave:"<<ave<<end1;

答案

参考答案:A

解析: 本题中sum用来保存每位学生的总成绩,所以在计算不同学生的总成绩时,应将sum重新赋值初值0,即语句“sum=0.0;”应该包含在第1个for循环体内,并在第2个for语句前执行。

单项选择题
单项选择题