c语言从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输
时间: 2024-09-28 13:08:59 浏览: 46
jisuanqi.rar_c语言 成绩管理_学生成绩管理系统 j_成绩管理系统 C语言_输入成绩界面
在C语言中,你可以使用循环结构(如`for`或`while`)来实现这个功能。首先,你需要定义一个变量存储当前的成绩、最高分、最低分及其对应的序号。然后,在循环内部,从用户那里接收输入,判断是否为负数,如果不是,就更新成绩数据。最后,在循环结束后,输出最高分、最低分以及它们的序号。
以下是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
int score, max_score = INT_MIN, min_score = INT_MAX, index_max = 0, index_min = 0;
int input_num;
printf("请输入学生的课程成绩(输入负数结束):\n");
while (scanf("%d", &input_num) == 1 && input_num >= 0) {
score = input_num;
// 如果新输入的成绩更高,则更新最大值和对应序号
if (score > max_score) {
max_score = score;
index_max = ++index_num;
}
// 如果新输入的成绩更低,则更新最小值和对应序号
if (score < min_score) {
min_score = score;
index_min = ++index_num;
}
// 清除输入缓冲区,防止干扰后续输入
scanf("%*c");
}
printf("最高成绩:%d,序号:%d\n", max_score, index_max);
printf("最低成绩:%d,序号:%d\n", min_score, index_min);
return 0;
}
```
阅读全文