问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c++的一道程序题

发布网友 发布时间:2023-10-10 19:15

我来回答

1个回答

热心网友 时间:2024-12-04 00:41

#include<iomanip>
using namespace std;
class Person
{
   protected:
        string name;
        int age;
   public:
        Person()
        {
            ;
        }
        Person(string p_name)
        {
            age=0;
            name=p_name;
        }
        Person (string p_name, int p_age)
        {
            name=p_name;
            age=p_age;
        }
};
class Student:protected Person
{
    int ID;
    float cpp_count;
    
    public:
        float cpp_score;
        float cpp_grade;
    Student(string p_name,int id,int p_age,float score,float count):Person(p_name)
    {
        ID=id;
        cpp_score=score;
        cpp_count=count;
        cpp_grade=cpp_score * 0.9 + cpp_count * 2;
    }
    Student():Person()
    {
        ID=0;
        cpp_score=0;
        cpp_count=0;
        cpp_grade=cpp_score * 0.9 + cpp_count * 2;
    }
    void output()
    {
        cout<<ID<<" "<<name<<" "<<setiosflags(ios::fixed)<<setprecision(1)<<cpp_grade<<endl;
    }
};
class Teacher:protected Person
{
    int ID;
    Student s[100];
    int count;
    float average;
    float sum;
    public:
        Teacher(string p_name,int id,int p_age):Person(p_name,p_age)
        {
            ID=id;
            count=0;
            name=p_name;
            sum=0;
        }
        void add(Student s1)
        {
            s[count]=s1;
            count++;
            sum+=s1.cpp_grade;
        }
        void calculate()
        {
            average=sum/count;
        }
        void output()
        {
            int i;
            cout<<ID<<" "<<name<<" "<<count<<" "<<setiosflags(ios::fixed)<<setprecision(1)<<average<<endl;
            for(i=0;i<count;i++)
            {
                s[i].output();
            }
        }
};
int main()
{
    string name;
    int age,id;
    float score,count;
    cin>>name>>id>>age;
    Teacher teacher(name,id,age);
    cin>>name;
    for(;name[0]!='0';)
    {
        cin>>id>>age>>score>>count;
        Student student(name,id,age,score,count);
        teacher.add(student);
        cin>>name;
    }
    teacher.calculate();
    teacher.output();
    return 0;
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
上午去烧香,晚上梦见僵尸要吃我 ...电梯顶层的上方看到死人半个身子 我我掉头走后 被吓醒了 郁_百度知... 我两次梦见去逛商场然后电梯(上升的,带扶手的)塌了,丧尸出来,我和一群... 梦见在丧尸要咬我然后被我一脚踢进电梯它里半个身体出来了还想咬,然后... 香港hpv九价预约官网网址 电脑所有的电线有哪些电脑有哪些连接线 电脑电源那么多线起什么作用电脑电源连接线有多少个基本的都有什么作用... 显示器要接几根线 ...连接线是9芯的,谁知道是哪几条有用,哪几条没有用,各是什么颜色... mbr平板膜可以倒着放么 身上起了一个红痘痘 一碰就很疼 这是怎么回事?8 急!求盘鹰风筝骨架结构图和制作步骤!7 比较好的家用绞肉机品牌有哪些?323 从乌鲁木齐大西门到北京路铁三中,是坐68路省时?还是倒车坐B... 有些公司只给员工交“五险”,却没有“一金”,到底为什么?679 搞不清楚函数里的f()是什么意思?是对应关系?比如f(x+2...42 最近听了一首歌,女的唱的,听了几句有点像薛之谦演员那首歌里面...2 一首歌的歌词是……红色时刻2 小学六年级数学书下册28页思考题怎么做? 暴走漫画王尼玛是谁84 哥期拉1998科幻电影名字叫什么5 什么是紫苏316 看图猜成语第六波第一关答案告诉我24 农村危房拆除补尝款一般多少时到帐 买期房可以贷款吗知乎买期房可以贷款吗 乌鲁木齐延安路到大西门银华酒店坐哪路公交车1 乌鲁木齐68路公交车夏季最早发车时间是几点?5 函数中f^2(x)是什么意思1 今年流行歌曲最红的6 大学生什么比赛有奖金的?6 武汉有没有小复式房?价格每平多少钱?求推荐! 背上长了一个红色的痘痘,有绿豆大小,像瘊子,时间长了,摸起来... 用支付宝交的网费可不可以到电信营业厅打印发票1 急求《白宫风云》双语字幕网盘资源,最好是第1季到第7季的,求...15 你心目中FIFA最佳球员的获奖者是谁? 家用绞肉机哪个牌子的好?84 苹果手机系统升级后如何恢复原状77 在“支付宝”里,交了家里的电信固话费后,怎样在网上获取它的电...1 经常阵发性头部发热出汗是怎么回事?2 手指皮肤变硬,开裂和脱皮属于什么皮肤病28 梦幻西游推广员给的两种号有什么区别,麻烦具体介绍下 手指头皮变硬变白脱皮是什么病8 晚上做梦梦见水里有鱼好吗94 中科大洋的公司概况1 求一首英文歌、第一句翻译过来好像是:“医生,演员,律师,歌手...84 脱发性毛囊炎可以治好的吗?6 在武汉买个小复式或小套房至少得准备多少钱?或者首付要准备多少... 苹果手机系统更新之后还能还原吗13 武汉有几家五星级酒店?32 电信电子发票几号可以打印23