c语言已知有3个班级各5名学员,请使用二维数组计算各个班级的总成绩
时间: 2024-10-11 10:09:24 浏览: 31
在C语言中,如果你想要使用二维数组来存储三个班级每个班级5名学员的成绩,你可以创建一个结构体来代表每位学员的信息,包含姓名和分数,然后用一个二维数组来存放所有学生的数据。假设我们有一个`Student`结构体,像这样:
```c
typedef struct {
char name[20]; // 姓名
int score; // 成绩
} Student;
// 数组用于存储三个班级的数据
Student class_grades[3][5];
```
接下来,你需要初始化这个数组,并为每个学员分配分数。例如,如果数据是从文件或其他地方读取的,或者直接硬编码进去,可以这样做:
```c
for (int i = 0; i < 3; i++) { // 遍历3个班级
for (int j = 0; j < 5; j++) { // 遍历每个班级的5名学员
class_grades[i][j].name = "班级" + i*10 + j + 1; // 假设名字是按照班级编号和序号生成的
class_grades[i][j].score = random_scores[j]; // 用随机数或者其他方式填充分数
}
}
```
这里,`random_scores`是一个包含5个整数的一维数组,表示五个学员的初始成绩。
至于计算各个班级的总成绩,你可以遍历对应数组部分来求和:
```c
int total_scores[3] = {0}; // 初始化每个班级总分
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
total_scores[i] += class_grades[i][j].score;
}
}
```
现在,`total_scores`数组里存储了每个班级的总成绩。
阅读全文