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

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

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

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

选择题

1.下列符号中,正确的C++标识符是( )。(D)

A. enum

B. 2b

C. foo-9

D. 32

解析:本题考查C++标识符的命名规则,规定如下:①所有标识符可以由字母、数字和下画线组成,且必须以字母或下画线开头;②C++的关键字不能作为标识符;③大、小写字母表示不同意义,即代表不同的标识符,如mun和Mun。A选项是C++的关键字,B选项不能以数字开头,C选项“-”不能用于组成标识符。

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

#include

class TestClass

{

public:

static int m:

TestClass()

{

m++;

}

TestClass(int n)

{

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<<end1}:

}(C)

A. m=3

B. m=4

C. m=5

D. m=6

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

3.下列哪项不是面向对象程序设计的主要特征( )。(D )

A. 封装

B. 继承

C. 多态

D. 结构

解析:面向对象程序设计的特点:标识惟一性,分类性,多态性,封装性,模块独立性好。

4.以下程序的输出结果是( )。

main()

{int a=4,b=5,c=0,d;

d=!a&&!b‖!C;

cout<<d<<<end1;

)(A)

A. 1

B. 0

C. 非0的数

D. ﹣1

解析:本题考查逻辑运算,只要考生掌握了逻辑运算的优先级就可以正确得到答案为选项A。或运算的优先级最高,&&和!!的优九级相同,按照从左到右的顺序计算。

5.有如下函数模板:

template

T east(U u){return U;}

其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数east的调用中正确的是( )。(D)

A. cast(i);

B. east(i);

C. east(i);

D. cast(i);

解析:本题考查函数模板的基本运用,属于基础知识。函数模板实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型代表,这个通用函数就是函数模板。函数模板可以设定默认参数,这样在调用模板函数时就可以省略实参,函数模板的实例就是一个函数的定义。所以本题答案为D。

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

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

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

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

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

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

7.有如下程序:

#include

using namespace std;

class test{

private:

int a;

public:

test(){tout<<\\(D)

A. 3

B. constructor

destructor

C. copy constructor

destructor

D. 3

destructor

解析:本题考查默认构造函数和带参数的构造函数以及析构函数,本题中定义了一个对象A(3),对象带着参数,所以执行带参数的构造函数,输出3,然后执行析构函数,输出destructor。所以本题答案为D。

8.以下程序的正确运行结果是( )。

#include

int fun(int);

voidmain()

{

hat a=2,i;

for(i=0;i<3;i++)

cout<<fun(a)<<endl;

cout<<endl;

}

intfun(int a)

{

int b=0;

static int c=3:

b++;c++;

remrn(a+b+c);

(C )

A. 4,5,6

B. 6,7,9

C. 7,8,9

D. 7,7,7

解析:主函数中在for循环中依次调用fun函数。其中c为静态变量,到程序结束有效。第一次循环中2+1+4=7,第二次循环20+1+5=8,第三次循环2+1+6=9。即答案为7 8 9。

9.为了提高函数调用的实际运行速度,可以将较简单的函数定义为( )。(A)

A. 内联函数

B. 重载函数

C. 递归函数

D. 函数模板

解析:一般函数进行调用时,要将程序执行权转到被调用函数中,然后再返回到调用它的函数中;而内联函数在调用时,是将调用表达式用内联函数体来替换,一般只将规模很小而使用频繁的函数声明为内联函数,可以避免函数调用时间开销,从而提高运行速度。

10.下列有关类继承的叙述中,错误的是( )。(D)

A. 继承可以实现软件复用本文档预览:3600字符,共17575字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号