编写一个程序,己有若干学生的数据,包括学号、姓名、成绩,要求输出这些学生的数据并计算出学生人数 和平均成绩(要求将学生人数和总成绩用静态数据成员表示)。
时间: 2024-01-07 16:02:20 浏览: 32
这是一道编程题,我可以提供一些思路和参考代码。首先,可以使用一个结构体来表示学生的信息:
struct Student {
int num; // 学号
string name; // 姓名
double score; // 成绩
};
然后,定义一个存储多个学生的容器,例如使用一个数组:
const int MAX_STUDENT_NUM = 100;
Student students[MAX_STUDENT_NUM];
接下来,可以编写一个函数来读入学生信息和统计学生人数和总成绩:
void readStudents(int &n, double &sum) {
n = 0;
sum = 0;
while (true) {
Student stu;
// 读入学生信息,例如:
// cin >> stu.num >> stu.name >> stu.score;
// 如果输入完毕,退出循环:
// if (stu.num == 0) {
// break;
// }
students[n++] = stu;
sum += stu.score;
}
}
最后,输出学生信息和统计结果:
void printStudents(int n, double sum) {
// 输出每个学生的信息,例如:
// for (int i = 0; i < n; i++) {
// cout << students[i].num << " " << students[i].name << " " << students[i].score << endl;
// }
static int totalNum = 0;
static double totalScore = 0;
totalNum += n;
totalScore += sum;
cout << "学生人数:" << totalNum << endl;
cout << "平均成绩:" << totalScore / totalNum << endl;
}
在主函数中调用上述函数即可完成任务:
int main() {
int n;
double sum;
readStudents(n, sum);
printStudents(n, sum);
return 0;
}