编写一个程序,已有若干学生的数据,包括学号、姓名、成绩,要求输出这些学生的 数据并计算出学生人数和平均成绩(要求将学生人数和总成绩用静态数据成员表示)。
时间: 2024-05-14 19:15:44 浏览: 142
好的,这是一个简单的学生管理系统程序的示例,它可以实现您所述的功能:
```c++
#include <iostream>
#include <string>
using namespace std;
class Student {
public:
static int num; // 学生人数
static double sum; // 总成绩
int id; // 学号
string name; // 姓名
double score; // 成绩
Student(int id_, string name_, double score_) {
id = id_;
name = name_;
score = score_;
num++;
sum += score;
}
static double average() { // 计算平均成绩
return sum / num;
}
};
int Student::num = 0;
double Student::sum = 0;
int main() {
Student s1(1, "张三", 90);
Student s2(2, "李四", 85);
Student s3(3, "王五", 75);
cout << "学生数: " << Student::num << endl;
cout << "平均成绩: " << Student::average() << endl;
cout << "学生信息: " << endl;
cout << "学号\t姓名\t成绩" << endl;
cout << s1.id << "\t" << s1.name << "\t" << s1.score << endl;
cout << s2.id << "\t" << s2.name << "\t" << s2.score << endl;
cout << s3.id << "\t" << s3.name << "\t" << s3.score << endl;
return 0;
}
```
输出结果:
```
学生数: 3
平均成绩: 83.3333
学生信息:
学号 姓名 成绩
1 张三 90
2 李四 85
3 王五 75
```
在这个示例程序中,我们定义了一个 `Student` 类来表示一个学生的信息,包括学号、姓名和成绩。静态成员变量 `num` 和 `sum` 分别表示学生的总数和总成绩。在 `Student` 类的构造函数中,我们更新了 `num` 和 `sum` 的值。
通过调用 `Student::average()` 静态函数可以计算出平均成绩。在 `main()` 函数中,我们实例化了三个学生对象,并且输出了学生的信息以及学生的数量和平均成绩。
希望这个例子程序可以帮助你解决你的问题。
阅读全文