6】编写一个程序,已有若千学生的数据,包括学号,姓名,成绩,要求输出这些学生的数据并计算出学生人数和平均成绩(要求将学生人数和总成绩用静态数据成员表示
时间: 2023-12-17 18:03:25 浏览: 62
好的,我能够理解你的问题。以下是一个简单的程序解决您的问题:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Student{
public:
int id;
string name;
double score;
static int number;
static double total_score;
Student(int id, string name, double score):id(id),name(name),score(score){
number++;
total_score += score;
}
void print(){
cout<<"id:"<<id<<" name:"<<name<<" score:"<<score<<endl;
}
};
int Student::number = 0;
double Student::total_score = 0;
int main()
{
Student stu1(1,"Tom",90);
Student stu2(2,"Bob",80);
Student stu3(3,"Lucy",70);
stu1.print();
stu2.print();
stu3.print();
cout<<"Number of students: "<<Student::number<<endl;
cout<<"Average score: "<<Student::total_score/Student::number<<endl;
return 0;
}
```
输出:
```
id:1 name:Tom score:90
id:2 name:Bob score:80
id:3 name:Lucy score:70
Number of students: 3
Average score: 80
```
上面的代码中,我们定义了`Student`类,其中包括学生的学号,姓名和成绩,还定义了两个静态数据成员:`number`表示学生的数量,`total_score`表示学生的总成绩。在类的构造函数中,每当创建一个学生对象,就会自动增加`number`的数量,并将这个学生的成绩加到`total_score`中。最后,我们可以通过调用静态数据成员的类名来输出学生的数量和平均成绩。
阅读全文