首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类CEmployee的定义补充完成。 (1)定义私有数据成员name、street、c
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示雇员的Employee类,但类Employee的定义并不完整。请按要求完成下列操作,将类CEmployee的定义补充完成。 (1)定义私有数据成员name、street、c
admin
2017-03-22
31
问题
使用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相等时返回真,否则为假的功能,请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
#defiRe MAXLEN 20
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::IsEqual (char
*ename)
{
//********4********
}
void CEmployee::display()
{
cout << name << " " <<
street<<" ";
cout << city << " "<<
zipcode<<" "<
}
void main(void)
{
CEmployee employee[4]。
{
CEmployee("李伟","兴荣路213号","兰州","413412”,21),
CEmployee("张星","南山街157号","贵州","534670",30),
CEmployee("赵曦","北大街108号","深圳","412440",43),
CEmployee("刘兰","南大街330号","北京","670893",17),
};
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)第1个标识下要求补充类CEmployee的私有数据成员name、street、city、zipcode和age的定义,分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外其余都是char型的数据,由主函数内的对象数组可知,name、street、city、zipcode均为字符数组,故第1个标识下应添加“charname[MAXLEN],street[MAXLEN],city[MAXLEN],zipcode[MAXLEN];”。
(2)构造函数完成成员变量的初始化,这里需要给name、street、city、zipcode赋初值,可利用字符串拷贝函数将参数字符串拷贝到成员变量中,第2个标识下应添加“strcpy(name,newName);strcpy(street,newstreet);strcpy(city, newCt);strcpy(zipcode,newZp);”。
(3)函数alterName(char*newName)是改变成员变量name的值,即将参数拷贝给name,可利用字符串拷贝函数strcpy()完成拷贝任务,故第3个标识下应添加“strcpy(name,newName);”。
(4)IsEqual(char*ename)~数是比较name成员变量和参数newName是否相同,可使用字符串比较函数strcmp0,第4个标识下应添加“return strcmp(name,ename)==0;”。
转载请注明原文地址:https://kaotiyun.com/show/Q9Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于构造函数的描述中,错误的是()。
判断char型变量c是否为小写字母的正确表达式是
有如下程序#include<iostream.h>intfunc(inta,intb){return(a+b);}voidmain(){intx=2,y=5,
下面程序的结果是#include<iostream.h>classA{inta;public:A():a(1){}
对建立良好的程序设计风格,下面描述正确的是
有如下程序:#includeusingflamespacestd;className{charname[20];public:Name(){strcpy(name,“”);cout
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3;int*v4;};其中有一个成员变量的定义是错误的,这个变量是
已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则
下面的函数定义是某函数模板能够生成的函数实例intsquare(intn)(returnn*n;)doublesquare(doublen)(retumn*n;)由此可知,该函数模板的定义是______。
12.请将下面的程序补充完整,使得程序输出“飘是张娜的书”。#includeusingnamespacestdclassBook{public:Book(char*str)|strcpy(title,str);
随机试题
1945年党的七大确立的党必须长期坚持的指导思想是()
A.对急危患者不得拒绝急救处置B.遵守法律、法规、技术操作规范C.参加专业培训D.接受继续医学教育医师应当履行的义务是
氟尼新葡甲胺的药理作用不包括()
异羟肟酸铁反应是用于鉴别香豆素的
路基施工不宜在冬期进行的工程项目有()。
王同学最近遇到了一些困扰,心理老师引导王同学梳理了错误观念,使其形成了正确的认识,解决了问题,王同学接受的这种心理指导属于()。
法制领导是指党领导制定各项公安法律、法规,并监督公安机关实施。()
当今世界各国相互联系、相互依存的程度空前加深,人类生活在同一个地球村里,生活在历史和现实交汇的同一个时空里,越来越成为你中有我、我中有你的命运共同体。从哲学的角度看,命运共同体体现了
设3阶矩阵A的特征值为-1,1,1,对应的特征向量分别为(1,-1,1)T,(1,0,-1)T,(1,2,-4)T.求A100.
给定程序中,函数fun的功能是:将形参s所指字符串中所有ASCⅡ码值小于97的字符存入形参t所指字符数组中,形成一个新串,并统计出符合条件的字符个数作为函数值返回。例如,形参s所指的字符串为:Abc@1x56*,程序执行后t所指字符数组中的字符串
最新回复
(
0
)