2017-12-14 乱入一道C++类的学习的题(静态数据成员初始化)

来源:互联网 发布:谭铁牛 人工智能 编辑:程序博客网 时间:2024/06/10 23:11

1.题目描述

【问题描述】设计学生成绩类Score。在主函数中定义学生成绩对象数组s[]。用Sum()计算每个学生的总成绩、用Show()显示每个学生的成绩。增加静态成员函数getAvg(),用于返回学生的总平均分。通过增加合适的成员、修改成员函数等完成这一功能。

【输入形式】

包含一组测试数据。第一行输入一个整数n(1<=n<=100)。

接下来n行。每行先输入一个整数op:

当op==1时,输入x, y, z。代表输入一位新同学i(i从1开始编号)的语文、数学、英语成绩,无需输出。

当op==2时,输入i,输出第i同学的总成绩。数据保证这位同学的成绩已经录入。

当op==3时,输入i,依次输出第i同学的语文数学英语成绩,成绩之间用空格隔开。

当op==4时,输出当前已经录入学生的总平均分,结果保留两位小数。

(1<=n<=100, 1<=id<=10, 1<=op<=3, 0<=x,y,z<=100,全部输入都为整型数)

当op==2,3,4时,输出所求答案,每个答案占一行。
【样例输入】

这里写图片描述

这里写图片描述
这里写图片描述

这是填空题!!!!!!!!!!

2.源代码

#include <iostream> #include <cstdio> #include <cstdlib> #include <iomanip> using namespace std; class Score{     private:         int Chinese, Math, English;         static int TotalScore;         static int TotalStudent;     public:         Score() {}        void setScore (int c, int m, int e)        {            Chinese=c;            Math=m;            English=e;            TotalScore+=c+m+e;            TotalStudent++;        }         int Sum()        {            return Chinese+Math+English;        }        void Show()        {            cout<<Chinese<<" "<<Math<<" "<<English<<endl;        }        double static getAve()        {            double ave;            ave=TotalScore*1.0/TotalStudent;            return ave;        } };int Score:: TotalScore=0; int Score:: TotalStudent=0; int main(){     int n, op, i, c, m, e;     cin >> n;     int id = 1;     Score sco[11];    while(n--)    {        cin >> op;         if(op == 1)        {            cin >> c >> m >> e;            sco[id-1].setScore(c,m,e);            id++;                  //id就是统计学生人数;             continue;        }        else if(op == 2)        {             cin >> i;            int sum=sco[i-1].Sum();            cout<<sum<<endl;            continue;        }        else if(op == 3)        {             cin >> i;             sco[i-1].Show();            continue;        }        else        {            double b=sco[id-1].getAve();            printf("%.2lf\n",b);        }    }     return 0; } 

【输出】

这里写图片描述

阅读全文
0 0
原创粉丝点击