设计一个保存学生情况的结构体数据类型,学生情况包括姓名、学号、年龄。输入5个学生的情况,输出学生的平均年龄和年龄最小的那个学生的情况。要求输入和输出分别编写独立的输入函数input()和输出函数output()。
时间: 2024-02-03 15:15:21 浏览: 25
以下是该结构体数据类型的定义以及输入输出函数的实现:
```c++
#include <iostream>
#include <string>
using namespace std;
struct Student {
string name;
string id;
int age;
};
void input(Student students[], int size) {
for (int i = 0; i < size; i++) {
cout << "请输入第" << i + 1 << "个学生的姓名:";
cin >> students[i].name;
cout << "请输入第" << i + 1 << "个学生的学号:";
cin >> students[i].id;
cout << "请输入第" << i + 1 << "个学生的年龄:";
cin >> students[i].age;
}
}
void output(Student students[], int size) {
int sum_age = 0;
int min_age = students[0].age;
int min_age_index = 0;
for (int i = 0; i < size; i++) {
sum_age += students[i].age;
if (students[i].age < min_age) {
min_age = students[i].age;
min_age_index = i;
}
}
cout << "平均年龄为:" << sum_age * 1.0 / size << endl;
cout << "年龄最小的学生是:" << endl;
cout << "姓名:" << students[min_age_index].name << endl;
cout << "学号:" << students[min_age_index].id << endl;
cout << "年龄:" << students[min_age_index].age << endl;
}
int main() {
const int SIZE = 5;
Student students[SIZE];
input(students, SIZE);
output(students, SIZE);
return 0;
}
```
阅读全文