以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出:上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。A.sum=O.O;B.sum+=score;C.ave=sum/4.O;D.cout<<"No"<<n<<":"<<ave<<endl;

题目

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

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

A.sum=O.O;

B.sum+=score;

C.ave=sum/4.O;

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


相似考题
更多“ 以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出:上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。A.sum=O.O;B.sum+=sco”相关问题
  • 第1题:

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


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

  • 第2题:

    本题中数组art中存储了学生的成绩,分别为87,45,56,78,67,56,91.62,82,63,程序的功能是计算低于平均分的人数,并打印输出结果。请在程序空缺部分填写适当内容,使程序能正确运行。


    正确答案:
    第1处:i++或i=i+1或i+=1
    第2处:(double)sumScore/num
    第3处:i<num
    【解析】本程序首先通过第-个while循环求得平均数,再通过do while循环逐-比较,判断是否及格。第1处为while循环的自加;第2处计算平均数;第3处do while循环终止条件。

  • 第3题:

    以下叙述中错误的是()。

    A.C语句必须以分号结束

    B.复合语句在语法上被看作一条语句

    C.空语句的出现会影响程序运行

    D.注释可出现在程序的任何位置


    C 解析:C语句必须以分号结束,选项A是正确的。复合语句在语法上被看作一条语句,选项B也是正确的。空语句也算是一条语句,因此如果空语句出现在条件或者循环语句中,一样会被当作条件子句或者循环体来看待,所以选项c是错误的。赋值表达式末尾加分号就构成赋值语句,选项D正确。故本题应该选择C。

  • 第4题:

    给定程序MODll.C中,函数fun的功能是:在有n名学生,2门课成绩的结构体数组std中,计算出第l门课程的平均分,作为函数值返回。例如,主函数中给出了4名学生的数据,则程序运行的结果为:第l门课程的平均分是:76.125000

    请改正函数fun中指定部位的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:


    正确答案:
    (1)doublesum改为doublesunl=0.0;(2)for(i=0;i<2;i*)改为细(i=0;i<n;i++);(3)sum+=ad[i].scom[1]改为sum+=羽[i].score[0];【考点分析】主要考察桩时变量初始化,c语言里临时变量不初始化,它的默认值是不确定的一个值。再者,考察C语言约定数组的下标是从0开始的。【解题思路】(1)doubleⅫ改为double8am=0.0;累加求和需要初始化累加结果的临时变量。(2)for(i_0;i<2;i++)改为for(i_0;i<n;i++);共有11个学生的成绩,需要累加所有学生第一门课的成绩。(3)sum+.std[i].BCOl.e[1]改为8am+=8td[i].score[0];第1门课程的平均分,c语言的下标是从0开始的。

  • 第5题:

    以下程序的功能是按顺序读入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语句前执行。