当前位置:   article > 正文

定义一个人(Person)类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉、工作。吃饭方法没有返回值,输出:Everyone need eat.睡觉方法实现方法的重载。_定义一个人类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉,工作。 (1)

定义一个人类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉,工作。 (1)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

题目:

(1)定义一个人(Person)类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉、工作。吃饭方法没有返回值,输出:Everyone need eat.睡觉方法实现方法的重载,有两个方法,其中一个方法的参数为时间,该方法对睡觉时间进行判断,当通过实参传递过来的时间超过23:30,则程序输出:You went to bed too late. You should go to bed early.另一个方法的参数为数字(表示的是睡眠的时间),当通过实参传递过来的数字(即睡眠时间)小于7个小时,则程序输出:你睡的太少了,这样会变傻的!工作方法输出:Everyone need work.


(2)根据人类,派生一个学生类,增加属性;学校、学号重写工作方法(学生的工作是学习),该方法输出:I will good good study, day day up.


(3)根据人类,派生一个工人类,增加属性:单位、工龄;添加工资发放方法
该方法通过判断工作时间给出工人的工资,如果工作在6小时以内月薪为3500元(即向屏幕输出:工人的工资为3500元),工作时间在6~8小时月薪为4500元(即向屏幕输出:工人的工资为4500元),工作时间在8~10小时月薪为6000元(即向屏幕输出:工人的工资为6000元)。


(4)根据学生类,派生一个学生干部类,增加属性;职务增加方法;开会


(5)编写主函数分别对上述4类具体人物进行测试。
 

代码:

  1. #include<iostream>
  2. #include<string.h>
  3. using namespace std;
  4. class Person{
  5. public:
  6. string name;
  7. string sex;
  8. string nationality;
  9. int age;
  10. // 构造函数,用来初始化对象的属性
  11. Person(string na,string se,int ag,string national){
  12. name= na;
  13. sex = se;
  14. age = ag;
  15. nationality = national;
  16. }
  17. void eat()
  18. {
  19. cout<<"Everyone need eat."<<endl;
  20. }
  21. void sleep(double time)
  22. {
  23. if(time>23.30)
  24. {
  25. cout<<"You went to bed too late. You should go to bed early."<<endl;
  26. }
  27. else
  28. {
  29. cout<<"还没到睡觉时间!"<<endl;
  30. }
  31. }
  32. void sleep(int time)
  33. {
  34. if(time<7)
  35. {
  36. cout<<"你睡的太少了,这样会变傻的!"<<endl;
  37. }
  38. else
  39. {
  40. cout<<"你的睡眠充足!"<<endl;
  41. }
  42. }
  43. void work()
  44. {
  45. cout<<"Everyone need work."<<endl;
  46. }
  47. void print()
  48. {
  49. cout<<"姓名:"<<name<<endl;
  50. cout<<"性别:"<<sex<<endl;
  51. cout<<"年龄:"<<age<<endl;
  52. cout<<"国籍:"<<nationality<<endl;
  53. }
  54. };
  55. class student:public Person{
  56. public:string school;
  57. string number;
  58. student(string na,string se,int ag,string national,string sch,string num):Person(na,se,ag,national)
  59. {
  60. school=sch;number=num;
  61. }
  62. void work()
  63. {
  64. cout<<"I will good good study, day day up."<<endl;
  65. }
  66. void print()
  67. {
  68. cout<<"学校:"<<school<<endl;
  69. cout<<"姓名:"<<name<<endl;
  70. cout<<"学号:"<<number<<endl;
  71. cout<<"性别:"<<sex<<endl;
  72. cout<<"年龄:"<<age<<endl;
  73. cout<<"国籍:"<<nationality<<endl;
  74. }
  75. };
  76. class worker:public Person{
  77. private:
  78. string danwei;
  79. int goling;
  80. public:worker(string na,string se,int ag,string national,string da,int gl):Person(na,se,ag,national)
  81. {
  82. danwei=da;goling=gl;
  83. }
  84. void fagongzi(int time)
  85. {
  86. if(time<6)
  87. {
  88. cout<<"工人的工资为3500元."<<endl;
  89. }
  90. else if(time>=6 &&time<8)
  91. {
  92. cout<<"工人的工资为4500元"<<endl;
  93. }
  94. else if(time>=8 &&time<=10)
  95. {
  96. cout<<"工人的工资为6000元"<<endl;
  97. }
  98. else
  99. {
  100. cout<<"输入的工作时间有误!!!" <<endl;
  101. }
  102. }
  103. void print()
  104. {
  105. cout<<"姓名:"<<name<<endl;
  106. cout<<"性别:"<<sex<<endl;
  107. cout<<"年龄:"<<age<<endl;
  108. cout<<"国籍:"<<nationality<<endl;
  109. cout<<"单位:"<<danwei<<endl;
  110. cout<<"工龄:"<<goling<<endl;
  111. }
  112. };
  113. class studentleading:public student{
  114. private:string job;
  115. public:
  116. studentleading(string na,string se,int ag,string national,string sch,string num,string j):student(na,se,ag,national,sch,num)
  117. {
  118. job=j;
  119. }
  120. void print()
  121. {
  122. cout<<"学校:"<<school<<endl;
  123. cout<<"姓名:"<<name<<endl;
  124. cout<<"学号:"<<number<<endl;
  125. cout<<"性别:"<<sex<<endl;
  126. cout<<"年龄:"<<age<<endl;
  127. cout<<"工作:"<<job<<endl;
  128. cout<<"国籍:"<<nationality<<endl;
  129. }
  130. void meeting()
  131. {
  132. cout<<"学生会经行开会!"<<endl;
  133. }
  134. };
  135. int main()
  136. {
  137. Person p1("小王","男",18,"中国");//共同属性
  138. p1.print();//输出共用属性。
  139. p1.sleep(7) ;//调用公用的时间。
  140. cout<<"**********************"<<endl; //学生类
  141. student st1("小天","女",17,"中国","希望中学","1002");
  142. st1.print();
  143. cout<<"**********************"<<endl; //工人类
  144. worker w1("小李","男",25,"中国","流水线部门",3);
  145. w1.print();
  146. w1.fagongzi(8);
  147. cout<<"**********************"<<endl; //学生会部门类
  148. studentleading s1("小明","男",17,"中国","希望中学","1001","学生会");
  149. s1.print();
  150. s1.meeting();
  151. return 0;
  152. }

效果截图:


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了(1)定义一个人(Person)类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉、工作。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/136534
推荐阅读
  

闽ICP备14008679号