#include<iostream>
#include<stdlib.h>
using namespace std;
class Student//定义Student类
{public:
Student(int n, int a, float s) :num(n), age(a), score(s){}//定义构造函数
void total(); static float average();//声明静态成员函数
private:
int num;
int age;
float score;
static float sum;//静态数据成员
static int count;//静态数据成员
};
void Student::total()//定义非静态成员函数
{
sum += score;//累加总分
count++;//累计已统计的人数
}
float Student::average()//定义静态成员函数
{
return(sum / count);
}
float Student::sum = 0;//对静态数据成员初始化
int Student::count = 0;//对静态数据成员初始化
int main(){
Student stud[3] = {//定义对象数组并初始化
Student(1001, 18, 70), Student(1002, 19, 78),
Student(1005, 20, 98) };
int n;
cout << "please input the number of student:";
cin >> n;//输入需要求前面多少名学生的平均成绩
for (int i = 0; i < n; i++)//调用3次total函数
stud[i].total();
cout << "the average score of" << n << "student is" << Student::average() << endl;//调用静态成员函数
system("pause");
return 0;
}
#include<stdlib.h>
using namespace std;
class Student//定义Student类
{public:
Student(int n, int a, float s) :num(n), age(a), score(s){}//定义构造函数
void total(); static float average();//声明静态成员函数
private:
int num;
int age;
float score;
static float sum;//静态数据成员
static int count;//静态数据成员
};
void Student::total()//定义非静态成员函数
{
sum += score;//累加总分
count++;//累计已统计的人数
}
float Student::average()//定义静态成员函数
{
return(sum / count);
}
float Student::sum = 0;//对静态数据成员初始化
int Student::count = 0;//对静态数据成员初始化
int main(){
Student stud[3] = {//定义对象数组并初始化
Student(1001, 18, 70), Student(1002, 19, 78),
Student(1005, 20, 98) };
int n;
cout << "please input the number of student:";
cin >> n;//输入需要求前面多少名学生的平均成绩
for (int i = 0; i < n; i++)//调用3次total函数
stud[i].total();
cout << "the average score of" << n << "student is" << Student::average() << endl;//调用静态成员函数
system("pause");
return 0;
}