C语言输入N(定义为符号常量)个学生4门课的成绩,分别用函数实现下列功能: a.计算每个学生的平均分 b.计算每门课程的平均分 c.找出所有4*N个分数中最高的分数所对应的学生和课程
时间: 2024-02-22 14:55:45 浏览: 57
很好,这是一个关于C语言函数的问题,我来一一回答。
a. 计算每个学生的平均分,我们可以定义一个函数,输入每个学生的4门课成绩,输出该学生的平均分。
```c
float student_average(float score[]){
float sum = 0;
for(int i=0; i<4; i++){
sum += score[i];
}
return sum/4;
}
```
b. 计算每门课程的平均分,我们可以定义一个函数,输入所有学生在该门课程的成绩,输出该门课程的平均分。
```c
float course_average(float score[]){
float sum = 0;
for(int i=0; i<N; i++){
sum += score[i];
}
return sum/N;
}
```
c. 找出所有4*N个分数中最高的分数所对应的学生和课程,我们可以先找出最高分,再根据最高分找出对应的学生和课程。
```c
void find_highest_score(float score[][4]){
float highest_score = score[0][0];
int student_index = 0, course_index = 0;
for(int i=0; i<N; i++){
for(int j=0; j<4; j++){
if(score[i][j] > highest_score){
highest_score = score[i][j];
student_index = i;
course_index = j;
}
}
}
printf("The highest score is %.2f, which belongs to student %d and course %d.\n", highest_score, student_index+1, course_index+1);
}
```
其中,`score`是一个二维数组,第一维表示学生,第二维表示课程。
希望我的回答能够帮助到你。
阅读全文