单项选择题
输入某班学生某门课的成绩(最多不超过40人),当输入为负值时,表示输入结束,用函数编程统计成绩高于平均分的学生人数。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。
#include
#define N 40
int Average(int score[], int n);
int ReadScore(int score[]);
int GetAboveAver(int score[], int n);
int main()
{
int score[N], m, n;
n = ReadScore(score); /* 输入成绩,返回学生人数 */
printf("Total students are %d", n);
m = GetAboveAver(score, n); /* 统计成绩在平均分及其上的学生人数 */
if (______________) printf("Students of above average is %d", m);
return 0;
}
/* 函数功能:若n>0,则计算并返回n个学生成绩的平均分,否则返回-1 */
int Average(int score[], int n)
{
int i, sum = 0;
for (i=0; i0,则统计并返回成绩在平均分及平均分之上的学生人数,否则返回-1 */
int GetAboveAver(int score[], int n)
{
int i, count = 0, aver;
aver = ______________; /* 计算并打印平均分 */
if (aver == -1) return -1;
printf("Average score is %d", aver);
for (i=0; i= aver) count++;
}
return __________;
}
A.第12行: m != -1
第24行: n>0 ? -1 : sum/n
第35行: score[i] >= 0
第36行: i
第43行: Average(n,score)
第50行: count
B.第12行: m == -1
第24行: n<=0 ? sum/n : -1
第35行: score[i] >= 0
第36行: score
第43行: Average(score, n)
第50行: aver
C.第12行: m != -1
第24行: n>0 ? sum/n : -1
第35行: score[i] >= 0
第36行: i
第43行: Average(score, n)
第50行: count
D.第12行: m == -1
第24行: n>0 ? sum/n : -1
第35行: score[i] >= 0
第36行: i
第43行: Average(score, n)
第50行: i