求四门课平均成绩c语言,C语言:有三个学生,上四门课,要求输入全部学生的各门课成绩,并分别求出每门课的平均成绩按升序输出...
时间: 2024-02-01 19:13:07 浏览: 48
好的,下面是C语言代码实现:
```c
#include <stdio.h>
#define STUDENT_NUM 3 // 学生数量
#define COURSE_NUM 4 // 课程数量
int main() {
int scores[STUDENT_NUM][COURSE_NUM]; // 存储学生成绩的二维数组
float average[COURSE_NUM] = {0}; // 存储每门课程平均分的数组
// 输入每个学生的成绩
for (int i = 0; i < STUDENT_NUM; i++) {
printf("请输入第%d个学生的成绩:\n", i + 1);
for (int j = 0; j < COURSE_NUM; j++) {
scanf("%d", &scores[i][j]);
average[j] += scores[i][j]; // 累加每门课程的成绩
}
}
// 计算每门课程的平均分
for (int i = 0; i < COURSE_NUM; i++) {
average[i] /= STUDENT_NUM;
}
// 冒泡排序,按升序输出每门课程的平均分
for (int i = 0; i < COURSE_NUM - 1; i++) {
for (int j = 0; j < COURSE_NUM - i - 1; j++) {
if (average[j] > average[j+1]) {
float temp = average[j];
average[j] = average[j+1];
average[j+1] = temp;
}
}
}
printf("每门课程的平均分按升序输出如下:\n");
for (int i = 0; i < COURSE_NUM; i++) {
printf("第%d门课程的平均分为:%.2f\n", i+1, average[i]);
}
return 0;
}
```
代码中使用了一个二维数组`scores`来存储每个学生的成绩,使用一个一维数组`average`来存储每门课程的平均分。首先输入每个学生的成绩,然后计算每门课程的平均分。最后使用冒泡排序按升序输出每门课程的平均分。
阅读全文