2、有若干个学生,每个学生含有学号,姓名,成绩,程序要求:编写一个inputdata函数用于输入N个学生的数据,编写一个outputdata函数用于输出N个学生的数据,编写一个avgdata函数用于计算且输出N个学生的平均成绩。要求用C++,用iostream作为头文件,且不使用指针。
时间: 2023-06-12 18:03:50 浏览: 100
编制一个程序,要求输入5个学生的学号、2门课的成绩,然后输出每个学生的学号、2门课成绩、平均成绩。
3星 · 编辑精心推荐
以下是示例代码:
```c++
#include <iostream>
using namespace std;
const int MAX_NUM = 100; // 最大学生数
struct Student {
string id;
string name;
double score;
};
void inputData(Student students[], int n) {
for (int i = 0; i < n; i++) {
cout << "请输入第" << i + 1 << "个学生的信息" << endl;
cout << "学号:";
cin >> students[i].id;
cout << "姓名:";
cin >> students[i].name;
cout << "成绩:";
cin >> students[i].score;
}
}
void outputData(Student students[], int n) {
for (int i = 0; i < n; i++) {
cout << "第" << i + 1 << "个学生的信息:" << endl;
cout << "学号:" << students[i].id << endl;
cout << "姓名:" << students[i].name << endl;
cout << "成绩:" << students[i].score << endl;
}
}
void avgData(Student students[], int n) {
double sum = 0;
for (int i = 0; i < n; i++) {
sum += students[i].score;
}
double avg = sum / n;
cout << "平均成绩:" << avg << endl;
}
int main() {
int n;
Student students[MAX_NUM];
cout << "请输入学生人数:";
cin >> n;
inputData(students, n);
outputData(students, n);
avgData(students, n);
return 0;
}
```
首先定义了一个结构体 `Student` 表示学生,包含学号、姓名和成绩三个成员变量。然后定义了三个函数,分别用于输入、输出和计算平均值。注意,这里不使用指针。
在 `main` 函数中,先输入学生人数,然后定义一个长度为 `MAX_NUM` 的数组 `students` 存储学生信息。接着调用上述三个函数完成相应操作。
阅读全文