C语言统计班级英语和数学的成绩,请根据今天学习的二维数组知识完成代码设计,要求如下:1、依次从键盘上输入两门成绩,每个成绩输入5个值即可;2、分别求各科成绩的最高分;3、求各科成绩的平均分。
时间: 2024-12-20 21:14:23 浏览: 8
在C语言中,我们可以使用二维数组来存储每个学生的英语和数学成绩,并通过循环结构遍历数组来计算总分、平均分和最高分。以下是一个简单的示例代码:
```c
#include <stdio.h>
#define NUM_STUDENTS 5
#define NUM_SUBJECTS 2
int main() {
// 创建一个二维数组来存储学生分数
int scores[NUM_STUDENTS][NUM_SUBJECTS];
// 初始化最高分变量
int maxEnglish = INT_MIN;
int maxMath = INT_MIN;
// 输入成绩
for (int i = 0; i < NUM_STUDENTS; i++) {
printf("请输入第 %d 名学生英语和数学成绩(共5个值):\n", i + 1);
for (int j = 0; j < NUM_SUBJECTS; j++) {
scanf("%d", &scores[i][j]);
if (scores[i][j] > maxEnglish) {
maxEnglish = scores[i][j];
}
if (scores[i][j] > maxMath) {
maxMath = scores[i][j];
}
}
}
// 计算平均分
float totalEnglish = 0, totalMath = 0;
for (int i = 0; i < NUM_STUDENTS; i++) {
totalEnglish += scores[i][0];
totalMath += scores[i][1];
}
float avgEnglish = totalEnglish / NUM_STUDENTS;
float avgMath = totalMath / NUM_STUDENTS;
// 输出结果
printf("英语成绩最高分:%d\n", maxEnglish);
printf("数学成绩最高分:%d\n", maxMath);
printf("英语成绩平均分:%.2f\n", avgEnglish);
printf("数学成绩平均分:%.2f\n", avgMath);
return 0;
}
```
阅读全文