C语言定义一个二维数组,存入5个学生的语文、数学、英语、物理、化学5门课程的成绩,计算并输出每一门课程的平均成绩和每一位学生的平均成绩。
时间: 2023-11-04 15:12:00 浏览: 139
好的,以下是实现这个功能的C语言代码:
```c
#include <stdio.h>
#define N 5 // 学生人数
#define M 5 // 课程数目
int main() {
int score[N][M]; // 定义存储成绩的二维数组
int sum_course[M] = {0}; // 初始化每门课程的总分为0
int sum_student[N] = {0}; // 初始化每位学生的总分为0
// 循环输入每位学生的成绩
for (int i = 0; i < N; i++) {
printf("请依次输入第%d位学生的语文、数学、英语、物理、化学成绩:\n", i + 1);
for (int j = 0; j < M; j++) {
scanf("%d", &score[i][j]);
sum_course[j] += score[i][j]; // 累加每门课程的总分
sum_student[i] += score[i][j]; // 累加每位学生的总分
}
}
// 计算并输出每门课程的平均成绩
printf("每门课程的平均成绩为:\n");
for (int i = 0; i < M; i++) {
printf("第%d门课程的平均成绩为:%.2f\n", i + 1, (float)sum_course[i] / N);
}
// 计算并输出每位学生的平均成绩
printf("每位学生的平均成绩为:\n");
for (int i = 0; i < N; i++) {
printf("第%d位学生的平均成绩为:%.2f\n", i + 1, (float)sum_student[i] / M);
}
return 0;
}
```
该程序使用二维数组存储每位学生的成绩,并使用两个一维数组分别累加每门课程的总分和每位学生的总分。最后使用两个循环计算并输出每门课程的平均成绩和每位学生的平均成绩。
阅读全文