首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类TC的定义补充完整。 (1)定义私有数据成员name、street、city、zip
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类TC的定义补充完整。 (1)定义私有数据成员name、street、city、zip
admin
2020-06-29
58
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类TC的定义补充完整。
(1)定义私有数据成员name、street、city、zipcode和age分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外,其余都是char型的数据。请在注释1之后添加适当的语句。
(2)完成默认构造函数TC的定义,使其把参数传递给私有数据成员name、street、city、zipcode和age。请在注释2之后添加适当的语句。
(3)完成成员函数alterName(char*newName)的定义。请在注释3之后添加适当的语句。
(4)完成成员函数IsEqual(char*ename)的定义,实现当name相等时返回真,否则返回假的功能。请在注释4之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
试题程序:
#include
#include
#define MAXLEN 20
class TC
{
private:
//********1********
int age;
public:
TC(char * newName,char *newStreet,char *
newCt,char*newZp,int newAge);
void alterName(char*newName);
void display();
bool IsEqual(char*ename);
};
TC::TC(char*newName,char*newStreet,char*
newCt,char*newZp,int newAge)
{
//********2********
age=newAge;
}
void TC::alterName(char*newName)
{
//********3********
}
bool TC::IsEqual(char*ename)
{
//********4********
}
void TC::display()
{
cout<
cout<
}
void main(void)
{
TC employee[4]=
{
TC("张三","海淀区复兴路1号","北京","000001",18),
TC("李四","海淀区复兴路2号","北京","000002",19),
TC("王五","海淀区复兴路3号","北京","000003",20),
TC(”赵六”,"海淀区复兴路4号","北京","000004",21)
};
for(int i=0;i(4;i++)
employee
.display();
cout<<"\n修改\"李四\"的名字为\"李小四\"\n"
<
for(int j=0;j<4;j++)
{
if (employee[j].IsEqual("李四"))
{
employee[j].alterName("李小四");
employee[j].display();
break;
}
}
}
选项
答案
(1)应添加“char name[-MAXLEN],street[MAXLEN],city[MAXLEN],zipcode[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处要求补充类TC的私有数据成员name、street、city、zipcode和age的定义,分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外,其余都是char型的数据,由主函数内的对象数组可知,name、street、city、zipcode均为字符数组,故第1处应添加“char name[MAXLEN],street[MAXLEN],city[MAXLEN],zipcode[MAXLEN];”。构造函数完成成员变量的初始化,这里需要给name、street、city、zipcode赋初值,可利用字符串拷贝函数将参数字符串复制到成员变量中,第2处应添加“strcpy(name,newName);strcpy(street,newStreet);strcpy(city,newCt);strcpy(zipcode,newZp);”。
函数aherName(char*newName)是改变成员变量name的值,即将参数复制给name,可利用字符串拷贝函数strcpy完成复 制任务,故第3处应添加“strcpy(name,newName);”。IsEqual(char*ename)函数是比较name成员变量和参数newName 是否相同,可使用字符串比较函数strcmp,第4处应添加“return strcmp(name,ename)==0;”。
转载请注明原文地址:https://www.kaotiyun.com/show/np8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列有关函数重载的叙述中,错误的是
有如下程序:#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout.fill(’*’);cout<<left<<setw(4)<<123<<"OK"<<end1;r
设有定义inta=1;floatf=1.2;charc=’a’;,则下列表示错误的是
数据库设计包括两个方面的设计内容,它们是
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码。函数func(intd[],intn)的功能是将长度为num的数组d中的奇数扩大1倍,并存储到数组d中。例如:2,15,6,-3,8,-11,9,24
有如下函数模板定义:templateT1Fun(T2n){returnn*5.0;)若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则该调用应表示为()。
下列关于运算符重载的描述中,错误的是()。
下列运算符中,不能被重载的是()。
以下描述中,不是线性表顺序存储结构特征的是()。
关于关键字class和typename,下列表述中正确的是()。
随机试题
男性,60岁,因排便习惯改变及排便不畅1个月,于某院行纤维肠镜检查,医生进镜困难时,稍微用力后感到阻力明显降低,病人突然感到剧烈腹痛,检查被迫中止。此时发生的问题最可能是
关于外阴尖锐湿疣以下错误的是()。
临床治疗暴发型流行性脑脊髓膜炎的首选药是
低钾性碱中毒常出现于
下列有关国家赔偿的说法哪一项是正确的:()
图1-4、图1-5所示为A、B两个住宅规划方案。A小区用地面积21hm2,可住居民2430户。B小区用地面积23.5hm2,可住2850户。除B小区有两栋高层住宅外,其余均为5~6层住宅。小区内公共服务设施配套齐全。试指出两个小区在适应居民
《标准施工招标文件》中,有关保险,正确的说法是()。
(2012年)A股份有限公司(以下简称“A公司”)注册资本为8000万元。甲系A公司控股股东,持股比例为35%。乙持有A公司股份192万股。2007年8月20日,乙听到A公司欲进行产业转型的传闻,遂通过电话向A公司提出查阅董事会近一年来历次会议决议的要求。
“政社互动”的全称是“政府行政管理与基层群众自治有效衔接和良性立动”。其肉含是:凡村(居)自治事务,放手其自主管理;政府部门行政事务不得随意下派。“政社互动”的意义在于:
关系模式W(C,P,S,C,T,R)中各属性的含义是:C——课程,P——教师,S——学生,C——成绩,T——时间,R——教室,根据语义有如下数据依赖集:D={C→P,(S,C)→C,(T,R)→C,(T,P)→R,(T,S)→R}关系模式W
最新回复
(
0
)