itgle.com

以下程序的功能是:按顺序读入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:"<<

题目

以下程序的功能是:按顺序读入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<<"NO."<<n<<"ave:"<<ave<<end1;


相似考题
更多“以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每个学生的平均分数并输出,程序如下: ”相关问题
  • 第1题:

    以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出:

    上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。

    A.sum=O.O;

    B.sum+=score;

    C.ave=sum/4.O;

    D.cout<<"No"<<n<<":"<<ave<<endl;


    正确答案:A
    本题编译没有错误,但是执行结果确实错误的。细心的考生可以发现,第一个考生的乘积输入完之后,sum的值并没有被清空,接着累加第二个考生的分数,随后进行四门平均是错误的。所以需要内层循环和平均值计算完毕后进行sum的清空。

  • 第2题:

    有4个学生,每个学生的数据包括学号(整数)、3门课程的成绩(浮点数),从键盘输入3个学生数据,要求输出每个学生3门课程的平均成绩(保留2位小数),同时输出最高的平均成绩(保留2位小数)


    交叉表查询

  • 第3题:

    有5个学生,每个学生有3门课程的成绩,从键盘输入学生数据(包括学号、姓名、三门课的成绩),计算出平均成绩,将原有数据和计算出平均分数存放在磁盘文件“stud”中


  • 第4题:

    以下程序的功能是按顺序读入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("NO%d:%f\n",n,ave); } } 上述程序运行后结果不正确,调试中发现有―条语句出现在程序中的位置不正确。这条语句是

    A.sum=0.0;

    B.sum+=score;

    C.ave=sum/4.0;

    D.printf("NO%d:%f\n",n,ave);


    正确答案:A
    解析:本题中sum用来保存每位学生的总成绩,所以在计算不同学生的总成绩时,应将sum重新赋值 初值0,即语句sum=0.0;,它应在第二个for语句前执行。

  • 第5题:

    编写程序,输入8位学生5门课的成绩,分别用函数实现以下3个功能,并在主函数中调用:计算每个学生的平均分;计算每门课的平均分;找出所有40个分数中最高的分数所对应的学生和课程。


    6A.doc