有10个学生,每个学生的数据包括姓名,成绩,用指针变量找出其中成绩最高的学生
时间: 2023-12-15 10:09:43 浏览: 62
好的,这是一个简单的指针变量练习题,下面是解答:
```c
#include <stdio.h>
#include <string.h>
// 定义学生结构体
struct Student {
char name[50];
float score;
};
int main() {
int n = 10; // 学生数量
struct Student students[n]; // 定义学生数组
// 输入学生信息
for (int i = 0; i < n; i++) {
printf("请输入第%d个学生的姓名和成绩:\n", i + 1);
scanf("%s %f", students[i].name, &students[i].score);
}
// 查找最高分
struct Student *max = &students[0]; // 定义指针变量,初始指向第一个学生
for (int i = 1; i < n; i++) {
if (students[i].score > max->score) { // 如果当前学生的成绩比最高分高
max = &students[i]; // 更新最高分学生的指针变量
}
}
// 输出最高分学生信息
printf("成绩最高的学生是:%s,成绩为:%.2f\n", max->name, max->score);
return 0;
}
```
运行程序,输入每个学生的姓名和成绩后,程序会输出成绩最高的学生的姓名和成绩。
阅读全文