定义一个 Student 类,在该类定义中包括一个数据成员 score(分 数)、两个静态数据成员 total(总分)和学生人数 count;成员函 数 scoretotalcount(float s)用于设置分数、求总分和累计学生人数; 静态成员函数 sum()用于返回总分;静态成员函数 average() 用于求平均值。在 main()函数中,输入某班同学的成绩,并调用 上述函数求全班学生的总分和平均分。
时间: 2024-01-08 13:03:17 浏览: 62
学生基本数据的类的定义
以下是一个符合题意的 C++ 代码示例:
```cpp
#include <iostream>
using namespace std;
class Student {
public:
static float total;
static int count;
float score;
void scoretotalcount(float s) {
score = s;
total += s;
count++;
}
static float sum() {
return total;
}
static float average() {
return total / count;
}
};
float Student::total = 0;
int Student::count = 0;
int main() {
int n;
cout << "请输入学生人数:";
cin >> n;
Student* students = new Student[n];
for (int i = 0; i < n; i++) {
float score;
cout << "请输入第" << i+1 << "个学生的成绩:";
cin >> score;
students[i].scoretotalcount(score);
}
cout << "全班学生的总分为:" << Student::sum() << endl;
cout << "全班学生的平均分为:" << Student::average() << endl;
delete[] students;
return 0;
}
```
在该程序中,我们定义了一个 `Student` 类,包含 `score` 数据成员和 `scoretotalcount` 成员函数(用于设置分数、求总分和累计学生人数)、`total` 和 `count` 静态数据成员、`sum` 和 `average` 静态成员函数。在 `main` 函数中,首先输入学生人数 `n`,然后动态创建一个长度为 `n` 的 `Student` 数组 `students`,并对每个学生的成绩调用 `scoretotalcount` 函数进行处理。最后输出全班学生的总分和平均分,并释放 `students` 数组所占用的内存。
阅读全文