题库 题库

【简答题】

使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示雇员的Employee类,但类Em-ployee的定义并不完整。请按要求完成下列操作,将类TC的定义补充完整。
(1)定义私有数据成员name、street、city、zipcode和age分别用于表示姓名、街道、城市、邮编、年龄,除年龄是整型外,其余都是char型的数据。请在注释1之后添加适当的语句。
(2)完成默认构造函数TC的定义,使其把参数传递给私有数据成员name、streel、city、zipcode和age。请在注释2之后添加适当的语句。
(3)完成成员函数aherName(char*newName)的定义。请在注释3之后添加适当的语句。
(4)完成成员函数IsEqual(char*ename)的定义,实现当name相等时返回真,否则返回假的功能。请在注释4之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
试题程序:
#include
#include<string.h)
#defineMAXLEN20
classTC
{
private:
//********、********
intage;
public:
TC(char*newName,char*newStreet,char*
newCt,char*newZp,intnewAge);
voidalterName(char*newName);
voiddisplay();
boolIsEqual(char*ename);
};
TC::TC(char*newName,char*newStreet,char*
newCt,char*newZp,intnewAge)
{
//********2********
age=newAge;
}
voidTC::alterName(char*newName)
{
//********3********
}
boolTC::IsEqual(char*ename)
{
//********4********
}
voidTC::display()
{
cout<<name<<""<<street<<"";
cout<<city<<""<<zipcode<<""<<age<
}
voidmain(void)
{
TCemployee[4]=
{
TC("张三","海淀区复兴路l号","北京","000001",18),
TC("李四","海淀区复兴路2号","北京","000002",19),
TC("王五","海淀区复兴路3号","北京","000003",20),
TC("赵六","海淀区复兴路4号","北京","000004",21)
};
for(inti=0;i<4;i++)
employee[i].display();
cout<<"\n修改\"李四\"的名字为\"李小四\"\n"<
for(intj=0;j<4;j++)
{
if(employee[j].IsEqual("李四"))
{
employee[j].aherName("李小四");
employee[j].display();
break;
}
}
}

参考答案

(1)应添加“ChArnAmE[MAXLEN],strEEt[MAX-LEN],City[MAXLEN],zipCoDE[MAXLEN];”。
(2)应添加“strCpy(nAmE,nEwNAmE);strCpy(strEEt,nEwStrEEt);strCpy(City,nEwCt);strCPy(zipEoDE,DE-wZp);”。
(3)应添加“strCpy(nAmE,nEwNAmE);”。
(4)应添加“rEturnstrCmp(nAmE,EnAmE)==0;”。

相关试题

单选题 某二叉树共有七个结点,其中叶子结点只有一个,则该二叉树的深度为(假设根结点在第1层)(  )。 查看答案
单选题 对于语句“cout<<setfill('*')<<setw(10)<<1<<setfill('*')<<setw(2)< 查看答案
单选题 下列叙述中,不属于测试的特征的是(  )。 查看答案
单选题 下列选项中不符合良好程序设汁风格的是(  )。 查看答案
单选题 下列关于构造函数的描述中,错误的是(  )。 查看答案
单选题 设有定义:
classC
{public:
intvalue;

};
intX,*P;
则以下引用形式中,正确的是(  )。
查看答案
单选题 两个或两个以上模块之问联系的紧密程度称为(  )。 查看答案
单选题 有如下程序:
#include
usingnamespacestd;
classCon
charID;
public:
Con():ID('A){cout<<1;}
Con(charID):ID(ID){eout<<2;}
Con(Con&c):ID(c.getID()){cout<<3;}
chargetID()corlst{returnID;}
};
voidshow(Conc)(cout<<c.getid();}
intmain()
{
Conc1:
show(c1);
Conc2('B');
show(c2);
return0;
}
执行上面程序的输出是(  )。
查看答案
单选题 使用白盒测试法时,确定测试数据应该根据(  )和指定的覆盖标准。 查看答案
单选题 有如下程序;
#include
usingnamespacestd;
clasBasel{
public:
Basel(intd){cout<<d;}
-Basel(){}
};
classBase2{
public:
Base2(intd){out<<d;}
~Base2(){}
};
classDerived:publicBase1,Base2{
public:
Derived(inta,intb,intC,intd):
Basel(b),Base2(a),b1(d),b2(c){}
private:
intb1;
intb2;
};
intmain(){
Derivedd(1,2,3,4);
return0;
}
运行时的输出结果是(  )。
查看答案
单选题 在下列程序的横线处填上适当的内容,使程序执行后的输出结果为ABCD(  )。
#include
usingnamespacestd;
classA
{
public:A(){cout<<'A';}
};
classB:
{
public:B(){cout<<'B';}
};
classC:virtualpublicA
{
public:C(){cout<<'C';}
};
classD:publicB,publicD
{
public:D(){cout<<'D';}
};
voidmain(){D04;}
查看答案
单选题 有如下程序:
#include
usingnamespacestd;
classTest
{
public:
Test(){n+=2;}
~Test(){n-=3;}
staticintgetNum(){returnn;}
private:
staticintn;
};
intTest::n=1;
intmain()
{
Test*p=neWTest;
deletep;
cout<<"n="<<test::getnum()<
return0;
}
执行该程序的输出结果是(  )。
查看答案
单选题 下面是类Shape的定义:
classShape{
public:
virtualvoidDraw(  )=0;
}
下列关于Shape类的描述中,正确的是(  )。
查看答案
单选题 将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是(  )。 查看答案
单选题 下面说法正确的是(  )。 查看答案
单选题 支持子程序调用的数据结构是(  )。 查看答案
单选题 将E-R图转换到关系模式时,实体与实体间的联系可以表示成(  )。 查看答案
单选题 下列叙述中错误的是(  )。 查看答案
单选题 一个教师可讲多门课程,一门课程可由多个教师讲授,则实体教师和课程间的联系是(  )。 查看答案
单选题 若有定义语句“doublex,y,*px,*Py;执行了px=&x;py=&y;”后,正确的输入语句是(  )。 查看答案