填空题
1. 请补充main()函数,该函数的功能是:计算每个学生成绩的平均分,并把结果保存在数组aver中。
例如,当score[N][M]={{83.5,82,86,65,67},{80,91.5,84,99,95},{90.5,95,86,95,97}}时,3个学生的平均分为76.7,89.9,92.7。
注意:部分源程序如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#define N 3
#define M 5
void main()
{
int i,j;
static float score[N][M]={{83.5,82,86,65,67},{80,91.5,84,99,95},{90.5,95,86,95,97}};
float aver[N];
system("CLS");
for(i=0; i<N; i++)
______;
for(i=0; i<N; i++)
{
for(j=0; j<M; j++)
______;
aver[i]/=M;
}
for(i=0; i<N; i++)
printf("\nstudent%d\taverage
=%5.1f",i+1,aver[i]);
}
【正确答案】
1、aver[i]=0
aver[i]+=score[i][j]
【答案解析】 由程序可知,数组aver中存放的是每个学生的平均成绩,其初始值应该为0,因此,空一处填“aver[i]=0”;求平均成绩的算法是先将各科成绩相加放在aver中,再求其平均分,因此,空二处填“aver[i]+=score[i][j]”。