问答题 给定程序MODI1.C中,函数fun的功能是:在有n名学生,2门课成绩的结构体数组std中,计算出第1门课程的平均分,作为函数值返回。例如,主函数中给出了4名学生的数据,则程序运行的结果为:第1门课程的平均分是:76.125000 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序:
【正确答案】 (1)double sum;改为double sum=0.0; (2)for(i=0;i<2;i++)改为for(i=0;i<n;i++) (3)sum+=std[i].score[1];改为sum+=std[i].score[0];
【答案解析】 [解题思路] (1)double sum;改为double sum=0.0;累加求和需要初始化累加结果的临时变量。 (2)for(i=0;i<2;i++)改为for(i=0;i<n;i++)共有n个学生的成绩,需要累加所有学生第一门课的成绩。 (3)sum+=std[i].score[1];改为sum+=std[i].score[0];第1门课程即C语言的下标是从0开始的。