网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文

全国计算机二级考试C++考前选择题试题

栏目: 计算机二级 / 发布于: / 人气:1.69W

选择题考试的一个拿分提醒,那么大家在考前知道有哪些试题练习吗?来看看小编的分享吧!

全国计算机二级考试C++考前选择题试题

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

A.源程序要文档化

B.数据说明的次序要规范化

C.避免滥用goto语句

D.模块设计要保证高耦合、高内聚

2.有下列二叉树,对此二叉树中序遍历的结果是(  )。

EF

CF

EF

FE

3.对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是(  )。

A.冒泡排序为n/2

B.冒泡排序为n

C.快速排序为n

D.快速排序为n(n-1)/2

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

A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强

B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱

C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱

D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强

5.在软件设计中,不属于过程设计工具的是(  )。

(过程设计语言)

C.N-S图

6.下列工具中为需求分析常用工具的是(  )。

C.N-S

7.下列是软件调试技术的是(  )。

A.错误推断

B.集成测试

C.回溯法

D.边界值分析

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

A.耦合性

B.内聚性

C.复杂性

D.数据传输特性

9.实体是信息世界中广泛使用的一个术语,它用于表示(  )。

A.有生命的事物

B.无生命的事物

C.实际存在的事物

D.一切事物

10.数据库系统的核心是(  )。

A.数据模型

B.数据库管理系统

C.数据库

D.数据库管理员

11.下面关于虚函数的描述中正确的是(  )。

A.虚函数是一个静态成员函数

B.虚函数是一个非成员函数

C.虚函数可以在函数说明时定义,也可以在函数实现时定义

D.派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型

12.以下for语句中不是死循环的是(  )。

(inti=0;i<1;++i);

(inti=0;;++i);

(inti=1;i>0;++i);

(;;);

13.执行下列语句序列:

inti=0;while(i<25)i+=3;cout<  输出结果是(  )。

A.24

B.25

C.27

D.28

14.C++语言中在C语言的基础上增加的特性不包括(  )。

A.结构

B.引用

C.类和对象

D.静态成员函数

15.有如下函数模板声明:

template

TMax(Ta,Tb){return(a>=b)?a.b;}

下列对函数模板Max(  )的调用中错误的是(  )。

(3.5,4.5)

(3.5,4)

(3.5,4.5)

(3.5,4)

16.已知在一个类体中包含如下函数原型:VOLUMEOPERATOR-(VOLUME)const;,下列关于这个函数的叙述中,错误的是(  )。

A.这是运算符一的重载运算符函数

B.这个函数所重载的运算符是一个一元运算符

C.这是一个成员函数

D.这个函数不改变类的任何数据成员的值

17.下面说法正确的.是(  )。

A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方

B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方

C.类的内联函数必须在类体内定义

D.类的内联函数必须在类体外通过加关键字inline定义

18.静态成员函数没有(  )。

A.返回值

指针

C.指针参数

D.返回类型

19.执行下列语句后,输出结果为(  )。

(’S’);

cout<<’C’<<’a’;

C.S

D.a

20.下面程序的执行结果是(  )。

#include"iostream.h"

voidmain()

{int*P,r;

P=newint:

*P=20:

r=sizeof(*p);

cout<  P;}

A.程序错误

B.内存为20地址的大小

C.20

D.4

21.C++语言中关于构造函数的说法正确的是(  )。

A.构造函数的函数名不必和类名相同

B.构造函数只能有一个

C.每个类必定有构造函数

D.构造函数必有返回值

22.(  )既可重载为一元运算符,又可重载为二元运算符。

A.“*”B.“=”

C.“=”和“*”D.“*”和“*++”

23.类MyClass的定义如下:

classMvClass

{

public:

MyClass(){value=0;}

SetVariable(inti){value=i;}

private:

intvalue;

};

则对下列语句序列正确的描述是(  )。

A.语句p=&my;是把对象my赋值给指针变量P

B.语句MyClass*P,my;会调用两次类MyClass的构造函数

C.对语句*ariable(5)的调用是正确的

D.语句p->SetVariable(5)与语句ariable(5)等价

24.有如下程序:

#included

usingnamespacestd;

classTestClass

{private:

intX,y;

public:

TestClass(inti,intj)

{x=i;

y=j;}

voidprint()

{cout<<"printl"<  voidprint()const

{cout<<"print2"<  intmain()

{constTestClassa(1,2);

t();

return0;}

该程序运行后的输出结果是(  )。

tl

t2

tlprint2

D.程序编译时出错

25.有如下程序:

#included

usingnamespacestd;

classTestClass

{inta;

pubIic:

TestClass(intx){a=x;}

voidshow(){cout<  classTestClassl:publicTestClass

{intb;

public:

TestClassl(inti):TestClass(i+1),b(i){}

voidshow(){cout<  intmain()

{TestClassb(5),*P;

TestClassld(1):

p=&d;

p->show();

return0;}

该程序运行后的打印结果是(  )。

A.5

B.1

C.0

D.2

26.下面程序输出的结果为(  )。

#include"iostream.h"

classA

{public:

A(){cOUt<<"CLASSA"<  ~A(){}};

ClaSSB:publicA

{public:

B(){cout<<"CLASSB"<  ~B(){}};

voidmain()

{A*P;

P=newB:

B*q:

q=newB;}

SA

SA

CLASSBCLASSB

CLASSB

SA

SA

CLASSBCLASSB

CLASSACLASSB

CLASSBCLASSB

27.在下面的运算符重载函数的原型中,错误的是(  )。

meoperator-(double,double);

leVolume::operator-(double);

meVolume::operator-(Volume);

meoperator-(Volume);

28.有如下类声明:

classXA{

intx:

public:

XA(intn){x=n;}

};

classXB:publicXA{

inty;

oublic:

XB(inta,intb);

};

在构造函数XB的下列定义中,正确的是(  )。

::XB(inta,intb):x(a),y(b){}

::XB(inta,intb):XA(a),y(b){}

::XB(inta,intb):x(a),XB(b){}

::XB(inta,intb):XA(a),XB(b){}

29.下面类的定义,有(  )处错误。

classMyClass

{public:

voidMyClass();

~MyClass(intvahle);

private:

inti=0;};

A.1B.2

C.3D.4

30.有以下程序:

classDate

{public:

Date(inty,intm,intd);

{year=Y;

month=m;

day=d;}

Date(inty=2000)

{year=y;

month=10;

day=1;}

Date(Date&d)

{year=;

month=h;

day=;}

voidprint()

{cout<  day<  private:

intyear,month,day;};

Datefun(Dated)

{Datetemp;

temp=d;

returntemp;}

intmain()

{Datedatel(2000,1,1),date2(0,0,O);

Datedate3(date1);

date2=fun(date3);

return0;}

程序执行时,Date类的复制构造函数被调用的次数是(  )。

A.2

B.3

C.4

D.5

31.下列表示纯虚函数的成员函数是(  )。

ualintfunc(int);func(int)=0;

ualvoidfunc=0;ualvoidrune(int){}

32.若有以下程序:

#include

usillgnamespacestd;

classA

{private:

inta;

public:

A(inti)

{a=i;}

voiddisp()

{cout<  classB

{private:

intb;

public:

B(intj)

{b=j;}

voiddisp()

{COUt<  classC:publicB,publicA

{private:

intC;

public:

C(intk):A(k-2),B(k+2)

(c=k;)

voiddisp()

{A::disp();

B::disp();

cout<  intmain()

{Cobj(10);

();

return0;}

程序执行后的输出结果是(  )。

A.10,10,10

B.10,12,14

C.8,10,12

D.8,12,10

33.下列表达式的值为false的是(  )。

A.1<3&&5<7B.!(2>4)

C.3&0&&lD.!(5<8)‖(2<8)

34.所有在函数中定义的变量及函数的形式参数,都属于(  )。

A.全局变量

B.局部变量

C.静态变量

D.常量

35.有以下程序:

#include

usingnamespacestd;

classR

{public:

R(intr1,intr2)

{R1=r1;

R2=r2;}

voidprint();

voidprint()const;

private:

intR1,R2;};

voidR::print()

{cout<  voidR::print()const

{cout<  intmain()

{Ra(5,4);

constRb(20,52);

t();

return0;}

执行后的输出结果是(  )。

A.5,4

B.20,52

C.0,0

D.4,5

36.下列程序的执行结果是(  )。

#include

#include

classTestClass

{

public:

intX,y;

TestClass(){x=y=0;}

TestClass(inta,intb)(x=a;y=b;}voiddisp()

{

cout<<"x="<  s[10];s="BOOK";

*S;s="BOOK!";

38.有下列程序:

#include

intfun(intx,inyy)

{if(x==y)return(x);

elsereturn((x+y)/2);

}

voidmain()

{inta=4,b=5,C=6;

printf("%d",fun(2*a,fun(b,c)));

}

程序运行后的输出结果是()。

A.3

B.6

C.8

D.12

39.设函数中有整型变量n,为保证其在未赋初值的情况下初值为0,应选择存储类别是(  )。

ster

ic

或register

40.有下列程序:

#include

intb=2:

intfun(int*k)

{b=*k+b;return(b);}

voidmain()

{inta[1O]={1,2,3,4,5,6,7,8},i;

for(i=2;i<4;i++){b=fun(&a[i])+b;printf

("%d",b);}

printf("");

}

程序运行后的输出结果是(  )。

A.1012

B.810

C.1028

D.1016