2013年9月全国计算机等级《二级C++》命题预测试卷七

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
1

使用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

#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<

cout<

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;

}

}

}

4

下列叙述中错误的是(  )。

  • A.用户定义的函数中可以没有return语句
  • B.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值
  • C.用户定义的函数中若没有return语句,则应当定义函数为void类型
  • D.函数的return语句中可以没有表达式
5

下列描述中,抽象类的特性是(  )。

  • A.可以说明虚函数
  • B.可以定义友元函数
  • C.可以进行构造函数重载
  • D.不能说明其对象
6

下列选项中不符合良好程序设汁风格的是(  )。

  • A.源程序要文档化
  • B.数据说明的次序要规范化
  • C.避免滥用goto语句
  • D.模块设计要保证高耦合、高内聚
7

有以下程序:

#include

usingnamespacestd;

classA{

public:

  • A(){cout<<"A";}&nbsp;&nbsp;&nbsp;&nbsp;};
  • classB{public:B(){cout<<"B";}};
  • classC:publicA{
  • Bb;&nbsp;&nbsp;&nbsp;&nbsp;public:
  • C(){cout<<"C";}&nbsp;&nbsp;&nbsp;&nbsp;};
  • intmain(){Cobj;return0;}&nbsp;&nbsp;&nbsp;&nbsp;执行后的输出结果是(  )。
  • A.CBA
  • B.BAC
  • C.ACB
  • D.ABC
8

将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是(  )。

  • A.不合法的运算符
  • B.一元运算符
  • C.无操作数的运算符
  • D.二元运算符
10

使用白盒测试法时,确定测试数据应该根据(  )和指定的覆盖标准。

  • A.程序的内部逻辑
  • B.程序的复杂结构
  • C.使用说明书
  • D.程序的功能
11

下列对于软件测试的描述中正确的是(  )。

  • A.软件测试的目的是证明程序是否正确
  • B.软件测试的目的是使程序运行结果正确
  • C.软件测试的目的是尽可能多地发现程序中的错误
  • D.软件测试的目的是使程序符合结构化原则
12

下列结构体类型说明和变量定义中正确的是(  )。

  • A.typedefstruct;&nbsp;&nbsp;&nbsp;&nbsp;{intn;charC;}REC;&nbsp;&nbsp;&nbsp;&nbsp;RECt1,t2;
  • B.structREC;&nbsp;&nbsp;&nbsp;&nbsp;{intn;charC;}&nbsp;&nbsp;&nbsp;&nbsp;RECt1,t2;
  • C.typedefstructREC;&nbsp;&nbsp;&nbsp;&nbsp;{intn=0;charc='A';}t1,t2
  • D.struct&nbsp;&nbsp;&nbsp;&nbsp;{intn;charC;}REC;&nbsp;&nbsp;&nbsp;&nbsp;RECt1,t2
14

将x+y*z中的“+”用成员函数重载,“*”是友元函数重载应写为(  )。

  • A.operator+(operator*(y,z))
  • B.x.operator+(operator*(y,z))
  • C.x.operator+(X*(y,z))
  • D.x+(operator*(y,z))
19

下列关于构造函数的描述中,错误的是(  )。

  • A.构造函数名与类名相同
  • B.构造函数可以有返回值
  • C.构造函数可以重载
  • D.每个类都有构造函数
20

数据库设计的根本目标是要解决(  )。

  • A.数据共享问题
  • B.数据安全问题
  • C.大量数据存储问题
  • D.简化数据维护
21

下列叙述中,不属于测试的特征的是(  )。

  • A.测试的挑剔性
  • B.完全测试的不可能性
  • C.测试的可靠性
  • D.测试的经济性
22

下面是类Shape的定义:

classShape{

public:

virtualvoidDraw(  )=0;

}

下列关于Shape类的描述中,正确的是(  )。

  • A.类Shape是虚基类
  • B.类Shape是抽象类
  • C.类Shape中的Draw函数声明有误
  • D.语句“ShapeS;”能够建立Shape的一个对象S
23

下面说法正确的是(  )。

  • A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
  • B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
  • C.类的内联函数必须在类体内定义
  • D.类的内联函数必须在类体外通过加关键字inline定义
25

下列关于派生类和基类的描述中,正确的是(  )。

  • A.派生类成员函数只能访问基类的公有成员
  • B.派生类成员函数只能访问基类的公有和保护成员
  • C.派生类成员函数可以访问基类的所有成员
  • D.派生类对基类的默认继承方式是公有继承
26

以下定义语句中正确的是(  )。

  • A.inta=b=0;
  • B.charA=65+1,b='b';
  • C.floata=1,"b=&a,"c=&b;
  • D.doublea=0.0;b=1.1;
27

两个或两个以上模块之问联系的紧密程度称为(  )。

  • A.耦合性
  • B.内聚性
  • C.复杂性
  • D.数据传输特性
30

若有定义语句“doublex,y,*px,*Py;执行了px=&x;py=&y;”后,正确的输入语句是(  )。

  • A.scanf("%f%f",x,y);
  • B.scanf("%f%f"&x,&y);
  • C.scanf("%If%le",px,py);
  • D.scanf("%lf%If"x,y);
31

有以下程序:

#include

usingnamespacestd;

classA{

public:

  • A(  ){cout<<"A";}&nbsp;&nbsp;&nbsp;&nbsp;};
  • classB{public:B(  ){cout<<"B";}};
  • classC:publicA{
  • Bb;&nbsp;&nbsp;&nbsp;&nbsp;public:
  • C(  ){cout<<"C";}&nbsp;&nbsp;&nbsp;&nbsp;};
  • intmain(  ){Cobj;return0;}&nbsp;&nbsp;&nbsp;&nbsp;执行后的输出结果是(  )。
  • A.CBA
  • B.BAC
  • C.ACB
  • D.ABC
34

软件详细设计产生的如下图所示。该图是(  )。

  • A.N—S图
  • B.PAD图
  • C.程序流程图
  • D.E—R图
35

为了使模块尽可能独立,要求(  )。

  • A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强
  • B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱
  • C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱
  • D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强
36

对于语句“cout<

  • A.*********1*2
  • B.********12
  • C.*******1*2
  • D.12********
37

下列叙述中正确的是(  )。

  • A.栈是“先进先出”的线性表
  • B.队列是“先进后出”的线性表
  • C.循环队列是非线性结构
  • D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
38

下列运算符函数中肯定不属于类FunNumber的成员函数的是(  )。

  • A.intoperator-(FunNumber);
  • B.FunNumberoperator-();
  • C.FunNumberoperator-(int);
  • D.intoperator-(FunNumber,FunNumber);
43

数据流图中带有箭头的线段表示的是(  )。

  • A.控制流
  • B.事件驱动
  • C.模块调用
  • D.数据流