首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。 【说明】 设计希赛IT教育研发中心的工资管理系统,该中心主要有3类人员:经理、销售员和销售经理。要求存储这些人员的编号、姓名和月工资,计算月工资并显示全部信息。月工资计算办法是:
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。 【说明】 设计希赛IT教育研发中心的工资管理系统,该中心主要有3类人员:经理、销售员和销售经理。要求存储这些人员的编号、姓名和月工资,计算月工资并显示全部信息。月工资计算办法是:
admin
2010-01-15
36
问题
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
【说明】
设计希赛IT教育研发中心的工资管理系统,该中心主要有3类人员:经理、销售员和销售经理。要求存储这些人员的编号、姓名和月工资,计算月工资并显示全部信息。月工资计算办法是:经理拿固定月薪8000元;销售员拿固定工资1000元,然后再按当月销售额的4%提成;销售经理既拿固定月工资也领取销售提成,固定月工资为5000元,销售提成为所管辖部门当月销售总额的5‰。
按要求设计一个基类employee,销售员类salesman,经理类manager,销售经理类 salesmanager。
程序5-1是类employee的模块内容,程序5-2是类salesman的类模块内容,程序5-3是类manager的模块内容,程序5-4是类salesmanager的模块内容。在主测试程序中,输入张三所管部门月销售量10000后的输出结果如下:
张三所管部门月销售量:10000
销售经理:张三
编号:1001
本月工资:5050
#include <iostream.h>
#include <string.h>
class employee
{
protected:
int no;
char *name;
float salary;
public:
employee(int num,char *ch)
{ no=num;
name=ch;
salary=0; }
virtual void pay()=0;
virtual void display()
{ cout<<"编号:"<<no<<endl;
cout<<"本月工资:"<<salary<<endl; }
};
【程序5-2】
class salesman: (1)
{
protected:
float commrate, sales;
public:
salesman(int num,char *ch):employee(num,ch)
{ commrate=0.04; }
void pay()
{ cout<<name<<"本月销售额:";
cin>>saies;
salary=sales*commrate+1000; }
void display()
{ cout<<"销售员:"<<name<<endl;
employee::display(); }
};
【程序5-3】
class manager: (1)
{
protected:
float monthpay;
public:
manager(int num,char *ch):employee(num,ch)
{ monthpay=8000; }
void pay()
{ salary=monthpay; }
void display()
{ cout<<"经理:"<<name<<endl;
employee::display(); }
};
【程序5-4】
class salesmanager: (2)
{
public:
salesmanager(int num,char *ch): (3)
{ monthpay=5000;
commrate=0.005;}
void pay()
{ cout<<name<<"所管部门月销售量:";
cin>>sales;
(4) }
void display()
{ cout<<"销售经理:"<<name<<endl;
(5) }
};
void main() //主测试函数
{ salesmanager p1 (1001,"张三");
p1.pay();
p1.display();
}
选项
答案
(1)virtual public employee (2)public manager,public salesman (3)employee(num,ch),manager(num,ch),salesman(num,ch) (4)salary=monthpay+commrate*sales; (5)employee::display();
解析
本题考查类的定义、继承及虚基类与虚函数的应用。
首先我们来看一下基类employee的程序代码,在基类中构造了一个构造函数和两个虚函数,其中虚函数display()可以输出编号和工资。
由整个程序的作用可以看出,类salesman与类manager应继承类employee,而类 salesmanager则应该继承类salesman与类manager。在每个类中都有函数pay()和display(),且在每个类中都对这两个函数进行了重新定义。这样这两个同名函数出现多个地址映射。要解决这个问题,在C++语言中,采用虚基类。因此,第(1)空的答案是virtual pubic employee。
第(2)空也是表示类的继承,类salesmanager继承类salesman与类manager,因此,此空答案为public manager, public salesman。
结合整个程序来看,其他三个类都是类salesmanager的父类,因此,第(3)空处应该填employee(num,ch),manager(num,ch),salesman(num,ch)。
根据题目的要求,再结合主函数与类salesmanager的模块可以推出第(4)空处的功能是计算销售经理的月总工资,而计算方法是固定工资加提成。因此,答案为 salary=monthpay+commrate*sales。
对比三个子类的display()函数,不难发现第(5)空应为employee::display()。
转载请注明原文地址:https://kaotiyun.com/show/uIjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
面向社会服务的信息系统突发安全事件时所采取的技术措施中一般不包括(62)________________。
在Excel2010的A1单元格中输入函数“=ABS(ROUND(-1.478,2))”,按回车键后,A1单元格中的值为________________。
Windows7中的文件命名规则不包括________________。
鼠标指针的形状取决于它所在的位置以及与其他屏幕元素的相互关系。在文字处理的文本区域,指针就像(),指向当前待插入字符的位置。
将四个元素a,b,c,d分成非空的两组,不计组内顺序和组间顺序,共有()种分组方法。
上级要求信息处理技术员做a、b、c、d、e五件工作。先做什么,后做什么,如何安排呢?根据工作性质以及紧急程度,他列出了如下几条规则:a应在b前 c应在a前 d应在a前 a应在e前d应在b前 b应在e前 c应在d前 c应在
假设在Access中已经建立了“学生”表,表中包括“学号”、“姓名”、“性别”和“班级”等字段,如果要统计出每个班级的人数,那么在查询设计视图的“班级”的“总计”行和“学号”的“总计”行中应分别选择(65)。
为在Exce1的A1单元格中生成一个60到100之间的随机数,则应在A1单元格中输入______
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
随机试题
某公司销售部门主管大华拟对本公司产品前两季度的销售情况进行统计,按下述要求帮助大华完成统计工作:根据“产品销售汇总表”中的数据,在一个名为“透视分析”的新工作表中创建数据透视表,统计每个产品类别的一、二季度销售及总销售额,透视表自A3单元格开始、并按一
法定增值额和理论增值额出现不一致,主要是因为对如下哪种价款的处理方式不同()
男性,34岁,突发右肾区刀割样疼痛2小时,疼痛窜及右下腹,不可忍受,辗转反侧,呻吟不止,伴恶心、未呕吐。查体:右下腹部深压痛。尿常规检查:RBC:3~8个/HP,余(-),首选应该进行
下列对体位的描述,错误的是
A.诸气B.营气C.元气D.宗气E.清气三焦的功能是主持
王某持有甲有限责任公司10%的股权,该公司未设立董事会和监事会。王某发现公司执行董事张某(持有该公司90%股权)将公司产品低价出售给其妻子开办的公司,遂书面向公司监事李某反映。李某出于私情未予过问。王某采取的下列行为中,可以有效保护公司和自己的合法利益的是
()是指人们在房地产估价的反复实践和理论探索中,在对房地产价格形成和运动的客观规律认识的基础上,总结出的一些简明扼要的,在估价活动中应遵循的法规或标准。
因同一控制下企业合并增加的子公司,在编制合并利润表时,应当将该子公司合并日至报告期期末的收入、费用、利润纳入合并利润表。()
位于都江堰鱼嘴之上,被誉为“中国古代五大桥梁”的是()。
社会保障作为一种国民收入再分配形式,是通过一定的制度实现的。关于社会保障,下列说法正确的是:
最新回复
(
0
)