设计一个结构体用于表示一个学生的信息,包括学号姓名年龄,从键盘输入若干个学生信息,存储到结构体数组中,并输出年龄最大的学生的学号和姓名
时间: 2024-02-13 10:07:48 浏览: 66
好的,根据您的需求,我提供以下的 C 语言代码实现:
```c
#include <stdio.h>
#include <string.h>
#define MAX_STUDENT_NUM 100 // 学生信息最大数量
// 学生信息结构体
struct Student {
char id[20]; // 学号
char name[20]; // 姓名
int age; // 年龄
};
int main() {
struct Student students[MAX_STUDENT_NUM]; // 存储学生信息的结构体数组
int n; // 学生数量
int max_age = -1; // 最大年龄
int max_age_index = -1; // 最大年龄的学生在数组中的下标
// 从键盘输入学生信息
printf("请输入学生数量:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
printf("请输入第%d个学生的学号:", i + 1);
scanf("%s", students[i].id);
printf("请输入第%d个学生的姓名:", i + 1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的年龄:", i + 1);
scanf("%d", &students[i].age);
}
// 查找最大年龄的学生
for (int i = 0; i < n; i++) {
if (students[i].age > max_age) {
max_age = students[i].age;
max_age_index = i;
}
}
// 输出年龄最大的学生的学号和姓名
printf("年龄最大的学生是:%s,学号:%s,年龄:%d\n", students[max_age_index].name, students[max_age_index].id, students[max_age_index].age);
return 0;
}
```
该程序定义了一个 `Student` 结构体,包含学号、姓名和年龄三个成员变量。在 `main` 函数中,首先从键盘输入学生信息,并存储到 `students` 数组中,然后遍历数组查找最大年龄的学生,最后输出该学生的学号和姓名。
希望能够对您有所帮助!
阅读全文