首页 > 全部 > 二级C++ > 国家二级(C++)机试模拟试卷280

国家二级(C++)机试模拟试卷280

本单篇文档共18173字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 模拟试卷 7987人下载
价格: 0.60 原价:¥9.60
收藏

国家二级(C++)机试模拟试卷280

选择题

1.分析下面程序,该程序的运行结果是( )。

#include

class TestClass

{

public:

static int m:

TestClass()

{

m++十一t-;

}

TestClass(int 11)

{

m=n:

}

static void test()

{

m++:

}

};

int TestClass::m=0;

void main()

{

TestClass A;

TestClass B(3);

A.test();

TestClass::test();

cout<<”m=”<<B.m<<endl;

}(C )

A. m=3

B. m=4

C. m=5

D. m=6

解析:由主函数main入手,首先定义Te8tClass对象A,B;对象B构造函数值为3,构造函数中m++,所以这时m=4。主函数中调用A.test(),因为“static int m;”,m被定义为类TestClass静态成员变量,当它的值改变后,则在各对象中这个数据成员的值都同时改变了。所以这里执行“A.test();”中的m为前面进行加1操作后的4,即m现在的值为5。

2.下列关于C++函数的叙述中,正确的是( )。(C)

A. 每个函数至少要具有一个参数

B. 每个函数都必须返回一个值

C. 函数在被调用之前必须先声明

D. 函数不能自己调用自己

解析:此题考查的是函数的性质。当调用无参函数时主函数并不将数据传送给被调函数,且可以带回或不带回函数值。函数的递归调用就是直接或间接的调用自己。

3.下列运算符不能重载为友元函数的是( )。(A)

A. = () [] ->

B. + – ++ —

C. > = <=

D. += -= *= /=

解析:此题考查的是运算符重载的概念。C++语言规定,=、[]、()、->以及所有的类型转换运算符只能作为成员函数重载,如果要重载为友元函数就必须重载为非成员函数。

4.在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。(C)

A. O(n)

B. O(n2)

C. O(log2n)

D. O(nlog2n)

解析:当有序线性表为顺序存储时才能用二分法查找。可以证明的是对于长度为n的有序线性表,在最坏情况下,二分法查找只需要比较log2n次,而顺序查找需要比较n次。

5.某二叉树中度为2的结点有10个,则该二叉树中有( )个叶子结点。(C )

A. 9

B. 10

C. 11

D. 12

解析:根据二叉树的性质3:对任何一棵二叉树,度为O的结点(即叶子结点)总是比度为2的结点多一个。

6.下列运算符中,不能被重载的是( )。(C)

A. &&

B. !=

C. .

D. ++

解析:C++不能重载的运算符只有5个,即“.”、“*”、“::”、“?:”、“sizeof”,故本题答案为C。

7.关于运算符重载,下列表述中正确的是( )。(C)

A. C++已有的任何运算符都可以重载

B. 运算符函数的返回类型不能声明为基本数据类型

C. 在类型转换符函数的定义中不需要声明返回类型

D. 可以通过运算符重载来创建C++中原来没有的运算符

解析:重载运算符的规则如下:①C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载;②C++不能重载的运算符只有5个;③重载不能改变运算符运算对象的个数;④重载不能改变运算符的优先级和结合性;⑤重载运算符的函数不能有默认的参数;⑥重载的运算符必须和用户定义的自定义类型的对象一起使用,至少应有一个是类对象,即不允许参数全部是C++的标准类型。故本题答案为C。

8.有三个关系R,S和T如下:

(D)

A. 选择

B. 投影

C. 交

D. 并

解析:并关系T中包含了关系R与s中的所有元组,所以进行的是并的运算。

9.已知函数f的原型是void f(int*a,long&b);,变量v1、v2的定义是:

int v1;long v2;

下列调用语句中正确的是( )。(D)

A. f(v1,&v2);

B. f(v1,v2);

C. f(&v1,&v2);

D. f(&v1,v2);

解析:函数参数的3种传递方式:①将变量名作为形参和实参,即传值方式;②传递变量指针;③引用形参。本题中函数f的第一个形参为指针,那么调用f函数时,第一个参数必须是地址,所以必须是&vl,第二个形参为引用,所以对应实参为v2即可。故本题答案为D。

10.有如下两个类定义:

class XX{

private:

double x1;

protected:

double x2;

public:

double x3;

};

class YY:protected XX{

private:

double y1;

protected:

double y2;

public:

double y3;

};

在类YY中保护成员变量的个数是( )。(C)

A. 1

B. 2

C. 3

D. 4

解析:本题考杏保护继承中派生类对基类的访问属性,在受保护继承中,基类的公用成员和保护成员在派生类中成了保护成员,所以基类的成员x2、x3变成了保护成员,派生类中的y2也是保护成员,所以共有3个保护成员。本题答案为C。

11.下列关于虚基类的描述,错误的是( )。(B)

A. 设置虚基类的目的是为了消除二义性

B. 虚基类的构造函数在非虚基类之后调用

C. 若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用

D. 若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数

本文档预览:3600字符,共18173字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C++)机试模拟试卷280

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号