编写程序输入某班C语言考试的考试分数,该班人数未知,用-1作为结束标志,若输入大于100分,则提示重新输入,然后计算全班的最高分、最低分与平均分。
时间: 2023-03-01 22:11:30 浏览: 371
以下是 C 语言实现的代码:
```
#include <stdio.h>
int main() {
int score, count = 0, sum = 0, max = 0, min = 100;
while (1) {
printf("请输入第 %d 个学生的分数:", count + 1);
scanf("%d", &score);
if (score == -1) break;
if (score > 100) {
printf("分数不能大于 100 分,请重新输入\n");
continue;
}
count++;
sum += score;
if (score > max) max = score;
if (score < min) min = score;
}
if (count == 0) {
printf("没有输入任何分数\n");
} else {
printf("全班的最高分是:%d\n", max);
printf("全班的最低分是:%d\n", min);
printf("全班的平均分是:%.2f\n", (float)sum / count);
}
return 0;
}
```
相关问题
输入某班C语言考试成绩,该班人数未知,用 -1 作为结束标志,若输入大于 100 分或小于 0 分,则重新输入,然后计算全班的最高分、最低分与平均分。
当你需要处理一个班级的C语言考试成绩,并且不知道具体人数,你可以设计一个程序来逐步接收学生的分数。首先,你需要创建一个无限循环来持续接受输入,直到遇到-1这个结束标志。每次循环,你会提示用户输入一个分数,然后检查这个分数是否有效(即是否在0到100之间)。如果输入无效,就要求用户重新输入。
下面是一个简单的伪代码描述了这个过程:
```python
scores = []
while True:
score = int(input("请输入学生分数(输入-1结束):"))
if score == -1:
break
elif score < 0 or score > 100:
print("分数错误,请重新输入!")
continue
scores.append(score)
if scores: # 检查列表是否为空
highest_score = max(scores)
lowest_score = min(scores)
average_score = sum(scores) / len(scores)
print("全班最高分:", highest_score)
print("全班最低分:", lowest_score)
print("全班平均分:", average_score)
else:
print("没有输入有效的分数数据。")
```
在这个程序中,
阅读全文