C语言实现40个人输出成绩排序,平均分,不及格人数
时间: 2023-08-12 20:19:58 浏览: 61
可以使用C语言中的数组和循环来实现40个人成绩的排序和计算平均分、不及格人数。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define NUM_OF_STUDENTS 40
int main() {
int i, j;
float sum = 0, avg, temp;
int fail = 0;
float grades[NUM_OF_STUDENTS] = {80, 70, 90, 85, 75, 60, 95, 88, 92, 78, 83, 87, 91, 79, 84, 89, 77, 93, 76, 82, 86, 81, 94, 74, 96, 73, 97, 72, 98, 71, 99, 70, 65, 63, 67, 62, 68, 61, 69, 80};
// 冒泡排序
for (i = 0; i < NUM_OF_STUDENTS - 1; i++) {
for (j = 0; j < NUM_OF_STUDENTS - i - 1; j++) {
if (grades[j] < grades[j + 1]) {
// 交换两个数
temp = grades[j];
grades[j] = grades[j + 1];
grades[j + 1] = temp;
}
}
}
// 输出排序后的成绩
printf("排序后的成绩:\n");
for (i = 0; i < NUM_OF_STUDENTS; i++) {
printf("%.2f ", grades[i]);
sum += grades[i];
if (grades[i] < 60) {
fail++;
}
}
// 计算平均分
avg = sum / NUM_OF_STUDENTS;
// 输出平均分和不及格人数
printf("\n平均分:%.2f\n不及格人数:%d\n", avg, fail);
return 0;
}
```
这段代码中,我们在排序的同时,累加所有成绩,并计算不及格人数。排序结束后,我们计算平均分,最后输出排序后的成绩、平均分和不及格人数。你可以将这个示例代码中的成绩替换为你需要排序的40个人的成绩。