首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类CEmployee的定义补充完成。 (1)定义私有数据成员name、street、city、
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类CEmployee的定义补充完成。 (1)定义私有数据成员name、street、city、
admin
2015-07-20
70
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类CEmployee的定义补充完成。
(1)定义私有数据成员name、street、city、zipcode和age分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外其余都是char型的数据。请在注释∥********1********之后添加适当的语句。
(2)完成默认构造函数CEmployee的定义,使其把参数传递给私有数据成员name、street、city、zipcode和age。请在注释∥********2********之后添加适当的语句。
(3)完成成员函数alterName(char*newName)的定义。请在注释∥********3********之后添加适当的语句。
(4)完成成员函数IsEqual(char*ename)的定义,实现当name相等时返回真,否则为假的功能,请在注释∥********3********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
#define MAXLEN 2 0
class CEmployee
{
private:
∥********1********
int age;
public:
CEmployee (char*newName,
char *newStreet,char *newCt,
char*newZp,int newAge);
void alterName(char*newName);
void display();
bool IsEqual(char*ename);
};
CEmployee::CEmployee(char
*newName,char *newStreet,char
*newCt,char*newZp,int newAge)
{
∥********2********
age=newAge;
}
void CEmployee::alterName(char
*newName)
{
∥********3********
}
bool CEmployee::I sEqual (cha:*ename)
{
∥********4********
}
void CEmployee::display()
{
cout << name << “ ” <•
street<<“ ”;
cout << city << ¨ ¨<•
zipcode << “ ”<
}
void main(void)
{
CEmployee employee[4]=
{
CEmployee(“李伟”,“兴穿
路213号”,“兰州”,“4 134 12”,21)
CEmployee(“张星”,”南山
街15 7号”,”贵州”,”5 3 4 6 70”,3 0)
CEmployee(”赵曦”,“北大
街10 8号”,“深圳”,“4 1244 0”,43)
CEmployee(”刘兰”,“南大
街3 3 0号”,“北京”,”67 0 8 93 n,17)
};
for(int i=0;i<4;i++)
employee
.display()
cout<<”\n修改\II张星\“的名字
为\”刘新\”\ntt<
for(int j=0;j<4;J++)
{
if(employee[j].IsEqua
(”张星”))
{
employee[j].
alterName(”刘新”);
employee[j].display();
break;
}
}
}
选项
答案
(1)添加语句:char name[MAXLEN],street[MAXLEN],c ity[MAXLEN],z ipcode[MAXLEN]; (2)添加语句: strcpy(name, newName);strcpy(street,newStreet); strcpy(city,newct);strcpy(Zipcode,newZp); (3)添加语句:strcpy(name,newName); (4)添加语句:return strcmp(name,ename)==0 ;
解析
(1)第1个标识下要求补充类CEmployee的私有数据成员name、street、city、zipcode和age的定义,分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外其余都是char型的数据,由主函数内的对象数组可知,name、street、city、zipcode均为字符数组,故第1个标识下应添加“char name[MAXLEN],street[MAXLEN],city[MAXLEN],zipcode[MAXLEN];”。
(2)构造函数完成成员变量的初始化,这里需要给name、street、city、zipcode赋初值,可利用字符串拷贝函数将参数字符串拷贝到成员变量中,第2个标识下应添加“strcpy(name,newName);strcpy(street,newStreet);strcpy(city,newCt);strepy(zipcode,newZp);”。
(3)函数alterName(char*newName)是改变成员变量name的值,即将参数拷贝给name,可利用字符串拷贝函数strcpyO完成拷贝任务,故第3个标识下应添加“strcpy(name,newName);990
(4)IsEqual(char*ename)函数是比较name成员变量和参数newName是否相同,可使用字符串比较函数strcmp0,第4个标识下应添加“return strcmp(name,ename)==0;”。
转载请注明原文地址:https://www.kaotiyun.com/show/03Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于C++主函数特性,下列叙述正确的是()。
下面对静态数据成员的描述中,正确的是()。
若源程序文件abc.cpp中只有一个函数,该函数的名称为【】。
在定义类的对象时,C++程序将自动调用该对象的【】函数初始化对象自身。
下面程序的输出结果是【】。#include<iostream>usingnamespacestd;intd=1;fun(intp){staticintd=5;d+=p;
执行下面程序后输出的结果是()。#include<iostream>usingnamespacestd;intmain(){inta[4][4]={{1,2,3,-4},{7,-12,-13,8}
下面关于模板的描述,错误的是
关于抽象类,下列表述正确的是()。
下列关于this指针的叙述中,正确的是
以下哪个不是C++语言中的有效标识符()。
随机试题
某企业2010年度生产经营情况如下:(1)产品销售收入2280万元。(2)产品销售成本1400万元。(3)产品销售费用100万元。(4)增值税60万元,消费税85万元,城建税13.01万元,教育费附加6.39万元。
下表是关于某企业的销售额与影响销售额的综合因素的数据:根据上述数据,画出相应的散点图并连线。并拟合出展示两组数据之间相关关系的直线。
组织目标是通过一定的计划工作来实现的。()
能够引起疾病并决定其特异性的因素称为能够促进疾病发生的因素称为
结扎法不适用于下列何种病证
患者,女性,30岁。诊断特发性血小板减少性紫癜。血常规显示红细胞3.6×1012/L,血红蛋白90g/L,白细胞6.8×109/L,血小板15×109/L,该患者最大的危险是
《畜禽遗传资源进出境和对外合作研究利用审批办法》第3条规定:“本办法所称畜禽,是指列入依照《畜牧法》第十一条规定公布的畜禽遗传资源目录的畜禽。本办法所称畜禽遗传资源,是指畜禽及其卵子(蛋)、胚胎、精液、基因物质等遗传材料。”对此,下列哪些表述是错误的?(
影响工程质量的因素有5个,包括人、材、机、法、环。( )是属于机械的内容。
按CFR术语成交,卖方承担的义务有( )。
在特定期间向股东发出的以高出当前市价的某一价格回购既定数量股票的要约的回购方式属于()。
最新回复
(
0
)