模仿c语言初学者,把两个学生的信息(包括学号、姓名、成绩)放在一个结构体变量中,输入两个学生的学号、姓名和成绩,输出成绩较高学生的学号、姓名和成
时间: 2023-12-16 18:13:58 浏览: 93
C语言利用结构体数组实现学生成绩管理系统
5星 · 资源好评率100%
绩。
好的,您的问题是如何将两个学生的信息存储在一个结构体变量中,并比较它们的成绩,输出成绩较高的学生的学号、姓名和成绩。下面是一个简单的示例程序,可以实现您的需求:
```c
#include <stdio.h>
#include <string.h>
struct student {
int id;
char name[20];
float score;
};
int main() {
struct student stu1, stu2;
printf("请输入第一个学生的学号、姓名和成绩:\n");
scanf("%d %s %f", &stu1.id, stu1.name, &stu1.score);
printf("请输入第二个学生的学号、姓名和成绩:\n");
scanf("%d %s %f", &stu2.id, stu2.name, &stu2.score);
if (stu1.score > stu2.score) {
printf("成绩较高的学生是:%d %s %.2f\n", stu1.id, stu1.name, stu1.score);
} else {
printf("成绩较高的学生是:%d %s %.2f\n", stu2.id, stu2.name, stu2.score);
}
return 0;
}
```
在上面的程序中,我们定义了一个名为 `student` 的结构体,它包含学号、姓名和成绩三个成员变量。在 `main` 函数中,我们创建了两个 `student` 类型的结构体变量 `stu1` 和 `stu2`,并使用 `scanf` 函数从标准输入中读取两个学生的信息。然后,我们比较了两个学生的成绩,输出了成绩较高的学生的学号、姓名和成绩。
注意,我们使用了 `printf` 函数的格式化字符串来输出浮点数,其中 `%.2f` 表示保留两位小数。
阅读全文