C++ 结构体数组:查找年龄最大学生信息

本程序使用 C++ 结构体数组存储学生信息,包括学号、姓名和年龄,并找出年龄最大的学生,输出其学号和姓名。

输入:

从键盘输入一个整数 n(1<=n<=100),表示学生人数。接下来输入 n 行,每行包含一个学生的信息,格式如下:

学号(12 位) 姓名(不含空格且不超过 20 位) 年龄(整数)

数据之间用空格隔开。

输出:

输出年龄最大的学生的学号和姓名,用空格隔开。

C++ 代码:

#include <iostream>
#include <cstring>
using namespace std;

struct Student {
    char id[13]; // 学号
    char name[21]; // 姓名
    int age; // 年龄
};

int main() {
    int n;
    cin >> n;
    Student stu[n]; // 定义结构体数组
    for (int i = 0; i < n; i++) {
        cin >> stu[i].id >> stu[i].name >> stu[i].age; // 输入学生信息
    }
    int max_age = -1; // 最大年龄
    int index = -1; // 最大年龄学生在数组中的下标
    for (int i = 0; i < n; i++) {
        if (stu[i].age > max_age) { // 如果当前学生年龄比最大年龄还大
            max_age = stu[i].age; // 更新最大年龄
            index = i; // 更新最大年龄学生在数组中的下标
        }
    }
    cout << stu[index].id << ' ' << stu[index].name << endl; // 输出年龄最大的学生的学号和姓名
    return 0;
}

代码说明:

  1. 使用 struct Student 定义学生结构体,包含学号 id、姓名 name 和年龄 age
  2. 使用 Student stu[n] 定义一个包含 n 个学生信息的结构体数组。
  3. 通过循环输入学生信息,并存储到结构体数组中。
  4. 通过循环遍历结构体数组,找出年龄最大的学生,并记录其在数组中的下标 index
  5. 输出年龄最大的学生的学号和姓名。

示例:

输入:

3 20230101 张三 20 20230102 李四 18 20230103 王五 22

输出:

20230103 王五

C++ 结构体数组:查找年龄最大学生信息

原文地址: http://www.cveoy.top/t/topic/ojIb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录