用C语言编写一个程序,统计学生成绩。输入一个正整数n,再输入n个学生的成绩,统计五分制成绩的分布(百分制到五分制的转换规则为:大于或等于90分为A,小于90分且大于或等于80分为B,小于80分且大于或等于70为C,小于70分且大于或等于60为D,小于60分为E)。
时间: 2024-11-06 13:25:13 浏览: 13
c语言作业——学生成绩统计.docx
为了用C语言编写一个程序来统计学生成绩并按五分制分布,你可以按照以下步骤:
```c
#include <stdio.h>
// 将百分制成绩转换为五分制
int convert_to_grades(int score) {
if (score >= 90) return 'A';
else if (score >= 80) return 'B';
else if (score >= 70) return 'C';
else if (score >= 60) return 'D';
else return 'E'; // 分数低于60分
}
int main() {
int n, score;
char grades[5] = {'0', '0', '0', '0', '0'}; // 初始化每个等级的计数
printf("请输入学生人数(n): ");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
printf("请输入第%d位学生的分数(0-100): ", i + 1);
scanf("%d", &score);
grades[convert_to_grades(score)]++; // 统计对应等级的次数
}
printf("\n五分制成绩分布:\n");
for (int i = 0; i < 5; i++) {
printf("A:%d B:%d C:%d D:%d E:%d\n", grades[i], grades[i+1], grades[i+2], grades[i+3], grades[i+4]);
}
return 0;
}
```
在这个程序中,我们首先定义了一个`convert_to_grades`函数,用于将百分制成绩转换为五分制。接着,在`main`函数中,用户输入学生人数和每个学生的成绩,然后通过循环遍历并将成绩转换为对应的五分制等级,并累加计数。
运行这个程序后,它会显示每个五分制等级的学生人数。
阅读全文