D.Teacher_Cadre
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 73 (71 users) Total Accepted: 73 (71 users) Special Judge: No
Description
利用面向对象设计方法解决问题。
    现有教师类Teacher的完整定义,其中name表示姓名(string型),age表示年龄(int型),title表示职称(string型)。 
    根据Teacher类和主函数的内容,设计派生类Teacher_Cadre类教师干部类,该类除了具有类Teacher的全部属性外,还具有post表示职务(string型),wages表示工资(int型)。
    输入2名教师干部信息进行比较,把工资高的人员信息输出(相同工资时2人信息全部输出)。
Input
有1组测试数据,共2行输入数据。
    每行输入一个教师干部人员的信息,数据之间以空格分隔。
Output
有1行或2行输出。
    每行输出的内容是工资高的人员的部分信息,包括姓名、职称、职务、工资。数据之间以空格分隔。
Sample Input
Li 30 Inst DC 4200
Zhang 25 Inst TE 3700
Sample Output
Li Inst DC 4200
Hint
class Teacher{
  protected:
    string name;
    int age;
    string title;
  public:
   Teacher(string n,int a,string t):name(n),age(a),title(t){}
   Teacher(){}
   string getN(){return name;}
   string getT(){return title;}
   int getA(){return age;}
   void set(string n,int a,string t){name=n;age=a;title=t;}
};

int main()
{
  Teacher_Cadre t1;
  int a,w;
  string n,t,p;
  cin>>n>>a>>t>>p>>w;
  t1.set(n,a,t,p,w);
  cin>>n>>a>>t>>p>>w;
  Teacher_Cadre t2(n,a,t,p,w);
  if(t1.getW()>t2.getW()){cout<<t1.getN()<<" "<<t1.getT()<<" "<<t1.getP()<<" "<<t1.getW()<<endl;}
  else if(t1.getW()<t2.getW()) {cout<<t2.getN()<<" "<<t2.getT()<<" "<<t2.getP()<<" "<<t2.getW()<<endl;}
  else {
     cout<<t1.getN()<<" "<<t1.getT()<<" "<<t1.getP()<<" "<<t1.getW()<<endl;
     cout<<t2.getN()<<" "<<t2.getT()<<" "<<t2.getP()<<" "<<t2.getW()<<endl;
  }
  return 0;
}

#include<iostream>
#include<stdio.h>
#include<cmath>
#include<iomanip>
#include<cstdio>
using namespace std;

class Teacher 
{
    friend class Teacher_Cadre;
protected:
    string name;
    int age;
    string title;
public:
    Teacher(string n, int a, string t) :name(n), age(a), title(t) {}
    Teacher() {}
    string getN() { return name; }
    string getT() { return title; }
    int getA() { return age; }
    void set(string n, int a, string t) { name = n; age = a; title = t; }
};

class Teacher_Cadre:public Teacher
{
public:
    string post;
    int wages;
    Teacher_Cadre(string n, int a, string t, string p, int w)
    {
        name = n, age = a, title = t, post = p, wages = w;
    }
    Teacher_Cadre() {}
    void set(string n, int a, string t, string p, int w)
    {
        name = n, age = a, title = t, post = p, wages = w;
    }
    int getW()
    {
        return wages;
    }
    string getP()
    {
        return post;
    }
};

int main()
{
    Teacher_Cadre t1;
    int a, w;
    string n, t, p;
    cin >> n >> a >> t >> p >> w;
    t1.set(n, a, t, p, w);
    cin >> n >> a >> t >> p >> w;
    Teacher_Cadre t2(n, a, t, p, w);
    if (t1.getW() > t2.getW()) { cout << t1.getN() << " " << t1.getT() << " " << t1.getP() << " " << t1.getW() << endl; }
    else if (t1.getW() < t2.getW()) { cout << t2.getN() << " " << t2.getT() << " " << t2.getP() << " " << t2.getW() << endl; }
    else {
        cout << t1.getN() << " " << t1.getT() << " " << t1.getP() << " " << t1.getW() << endl;
        cout << t2.getN() << " " << t2.getT() << " " << t2.getP() << " " << t2.getW() << endl;
    }
    return 0;
}

D.Teacher_Cadre相关推荐

  1. 分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。要求: (1)在两个基类中都包含姓名、年龄、性别、地址、电话等数

    分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类.要求: (1)在两个基类中都包含姓名.年龄.性别.地址.电话等数 ...

  2. Chapter11——分别声明Teacher(教师类)和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。

    基本上满足课本上条件,只是没有在类外定义成员函数,个人习惯而已. #include<iostream> #include<string> using namespace std ...

  3. 习题 11.9 分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。

    C++程序设计(第三版) 谭浩强 习题11.9 个人设计 习题 11.9 分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼 ...

  4. C++定义Teacher类和Cadre类作为基类,创建Teacher_Cadre类

    要求:分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式有这两个基类派生出新的Teacher_Cadre(教师兼干部)类. (1)在两个基类包括姓名.年龄.性别.地址.电话等数据 ...

  5. 类的继承性 分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。

    分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部). ① 在两个基类中都包含姓名.年龄.性别.地址.电话等数据成员. ...

  6. 第12周任务2(分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部))

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: * 作 者: ...

  7. 第十二周任务一(多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部))

    [题目](教材P394习题9)分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部).要求: (1)在两个基类中都包含姓名 ...

  8. 习题10.3 分别定义Teacher类和Cadre类,采用多重继承方式由这两个类派生出新类Teacher_Cadre类。

    分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类.要求: ① 在两个基类中都包含姓名.年龄.性别等数据成员. ② ...

  9. 《第十二周任务二》分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2012, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:  继承和派生 ...

最新文章

  1. 关于织梦系统不支持php中GD库的问题
  2. ar ebs 销售订单关闭_有关销售订单的工作流(workflow)定义和处理方式
  3. Ubuntu20.04运行帝国时代II征服者
  4. JavaFX UI控件教程(四)之Button
  5. 工作115:赋值给form对象
  6. 计算机二进制和太极,八卦与二进制
  7. OpenCore引导配置说明第三版
  8. DDK是什么,驱动是否都要用DDK写
  9. 注册表右键取得管理员权限
  10. iAd框架详细解析 —— ASM
  11. 你要如何衡量你的人生?
  12. soul网关mysql8_Dubbo学习系列之十七(微服务Soul网关)
  13. 剑灵32位登录服务器维护,(32位系统可稳定运行剑灵)剑灵客户端发生错误的解决办法...
  14. 6s芯片测试软件,如何简单检测你的苹果使用什么处理器办法
  15. 如何将AVIF格式转换为PNG格式
  16. 中控服务器PDS系统,bss中控服务器主机
  17. Spring之面向切面编程AOP(八)
  18. 机器指令与微指令之间的关系
  19. 狂肝半个月-嵌入式开发学习学习路线+知识汇总
  20. 2017京东校招面试回忆 已成功拿到offer

热门文章

  1. QGIS操作02 节点捕捉功能
  2. SHV0.G12、SHC0.M18、SHC0.M22插装式梭阀
  3. Python字典(dict)详解
  4. 【个人开发】通过SQLite获取微信聊天记录
  5. 服务器如何查看系统连接记录,查看服务器被连接记录
  6. [DP] [1D1D优化] [树状数组] [最短路] 遭遇战 (clean)
  7. 「软工结对编程」:最长英语单词链
  8. 玻璃手机不仅是产品 更是一种信念
  9. .net工程师也看javaeye
  10. 重视科研,中国人民大学统计与大数据学院2022年夏令营开启报名