C语言5. 从键盘上输入若干个学生的成绩,当成绩小于等于0时结束输入。计算出平均成绩,并输出不及格的成绩和人数。
时间: 2024-02-10 13:10:40 浏览: 109
下面是一个用C语言实现的程序,可以实现该功能:
```c
#include <stdio.h>
int main()
{
int score, count = 0, fail_count = 0, sum = 0;
float avg;
printf("请输入学生的成绩:\n");
while (1) {
scanf("%d", &score);
if (score <= 0) {
break;
}
count++;
sum += score;
if (score < 60) {
fail_count++;
}
}
if (count == 0) {
printf("没有输入任何成绩!\n");
} else {
avg = (float) sum / count;
printf("平均成绩为:%.2f\n", avg);
printf("不及格的成绩有:%d,占总人数的 %.2f%%\n", fail_count, (float) fail_count / count * 100);
}
return 0;
}
```
该程序使用了一个死循环和 break 语句,可以让用户不断输入成绩,直到输入的成绩小于等于0时退出循环。每次输入一个成绩,就累加总分和总人数,并统计不及格的人数。最后,根据总分和总人数计算平均成绩,并输出不及格的成绩和人数。注意要处理没有输入任何成绩的情况,避免除以零错误。
阅读全文