读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号的c语言算法
时间: 2023-12-17 20:02:38 浏览: 111
以下是一个简单的C语言算法:
```c
#include <stdio.h>
#include <string.h>
struct student {
char name[20];
char id[10];
int score;
};
int main() {
int n;
printf("请输入学生人数:");
scanf("%d", &n);
struct student stu[n];
int max = 0, min = 0;
for (int i = 0; i < n; i++) {
printf("请输入第%d个学生的姓名、学号、成绩:", i+1);
scanf("%s %s %d", stu[i].name, stu[i].id, &stu[i].score);
if (stu[i].score > stu[max].score) {
max = i;
}
if (stu[i].score < stu[min].score) {
min = i;
}
}
printf("成绩最高的学生是:%s,学号是:%s,成绩是:%d\n", stu[max].name, stu[max].id, stu[max].score);
printf("成绩最低的学生是:%s,学号是:%s,成绩是:%d\n", stu[min].name, stu[min].id, stu[min].score);
return 0;
}
```
其中,我们定义了一个结构体 `student`,包含学生的姓名、学号、成绩。然后,我们读入学生的信息,同时记录下成绩最高和成绩最低的学生的下标,最后输出它们的信息即可。
阅读全文