输入某个班的C语言成绩,人数未知,用-1作为结束语句,若大于100,则重新输入,计算全班最高分最低分与平均分C语言
时间: 2024-11-09 14:25:50 浏览: 29
为了计算班级的C语言成绩统计,我们需要编写一个简单的程序。这个程序将循环接收每个学生的分数,直到遇到-1为止。在此过程中,我们还需要跟踪最高分、最低分以及累计分数,最后计算并输出平均分。以下是一个基本的步骤描述:
1. 初始化最高分(max_score)为负无穷,最低分(min_score)为正无穷,总分数(total_score)为0,学生计数(student_count)为0。
2. 创建一个无限循环,直到用户输入-1。
a. 提示用户输入分数。
b. 接收用户的输入并检查是否合法(非负整数不超过100)。
c. 如果输入有效,更新最高分、最低分和总分数,同时增加学生计数。
d. 如果输入无效,提示用户重新输入。
3. 循环结束后,计算平均分(average_score),公式为:`average_score = total_score / student_count`。
4. 输出全班最高分、最低分和平均分。
```markdown
```
这里由于是文本格式,无法直接展示完整的代码,但在C语言中,你可以这样做:
```c
#include <stdio.h>
int main() {
int score, max_score = INT_MIN, min_score = INT_MAX, total_score = 0;
int student_count = 0;
while (1) {
printf("请输入学生的C语言成绩(-1 结束):");
scanf("%d", &score);
if (score == -1) break; // 遇到-1,退出循环
// 检查输入范围并更新记录
if (score > max_score) max_score = score;
if (score < min_score) min_score = score;
total_score += score;
student_count++;
}
double average_score = (double)total_score / student_count;
printf("全班最高分:%d\n", max_score);
printf("全班最低分:%d\n", min_score);
printf("平均分:%.2f\n", average_score);
return 0;
}
```
阅读全文