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

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

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

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

选择题

1.有如下程序:

#include

using namespace std;

int main()

{

void function(double val);

double val;

function(val);

cout<<val;

return 0;

}

void function(double val)

{

val=3;

}

编译运行这个程序将出现的情况是( )。(D)

A. 编译出错,无法运行

B. 输出:3

C. 输出:3.0

D. 输出一个不确定的数

解析:本题考查函数调用及传值方式传递参数,执行函数function时,并没有将3的值传回来,而val又没有初始化,所以会输出一个不确定的值,D选项正确。

2.如下类定义:

class AA

{

int a;

public:

int getRef()const { return &a; }//①

int getValue()const { return a; } //②

void set(int n)const { a=n; } //③

friend void show(AA aa)const { cout<<a; } //④

};

其中四个函数的定义中正确的是( )。(B)

A. ①

B. ②

C. ③

D. ④

解析:本题考查常成员函数,常成员函数只能引用本类中的数据成员,而不能修改它。所以本题答案为B。

3.对虚函数的调用( )。(D)

A. 一定使用动态联编

B. 必须使用动态联编

C. 一定使用静态联编

D. 不一定使用动态联编

解析:虚函数在运行阶段和类的对象绑定在一起,这样成为动态联编。虚函数声明只能出现在类声明中虚函数原型中,而不能在成员的函数体实现的时候。必须由成员函数来调用或者通过指针、引用来访问虚函数。如果通过对象名来访问虚函数,则联编在编译过程中认为是静态联编。

4.当需要将一个函数bool isnumber(char c)声明为内联函数时,则此内联函数的函数原型为( )。(C)

A. enum bool isnumber(char c);

B. define bool isnumber(char c);

C. inline bool isnumber(char c);

D. extern bool isnumber(char c);

解析:此题考查的是内联函数的相关知识点。函数原型应指出函数名、返回值类型以及在调用函数时必须提供的参数的个数和类型,因为要声明为内联函数,故应加inline关键字。

5.下列数据结构中,能用二分法进行查找的是( )。(D)

A. 无序线性表

B. 线性链表

C. 二叉链表

D. 顺序存储的有序表

解析:二分法查找只适用于顺序存储的有序表,表中的元素按值从小到大排列。

6.在软件开发中,需求分析阶段可以使用的工具是( )。(B)

A. N-S图

B. DFD图

C. PAD图

D. 程序流程图

解析:在需求分析阶段可以使用的工具有数据流图DFD图,数据字典DD,判定树与判定表,所以选择B。

7.有如下程序:

#include

using namespace std;

class A

{

public:

A(){cout<<\\(B)

A. BAA~A~B~A

B. ABA~B~A~A

C. BAA~B~A~A

D. ABA~A~B~A

解析:此题考查的是类的构造函数和析构函数。派生类构造函数的执行顺序为:首先调用基类的构造函数,调用顺序按它们被继承时说明的顺序;然后调用子对象的构造函数,调用顺序按它们在类中说明的顺序;最后是派生类构造函数中的内容。因此本题中,首先调用基类构造函数输出A,然后调用子对象的构造函数输出B,p=new A再调用类A的构造函数输出A;析构函数的调用顺序和构造函数的调用顺序相反。

8.若有如下程序:

#includc

using namespace std;

int s=0:

class sample

{

static int n;

public:

sample(int i)

{

n=i;

}

static void add()

{

S+=n:

}

};

int sample::n=0;

int main()

{

sample a2),b(5);

sample::add0;

cout<<s<<endl:

ream 0:

}

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

A. 2

B. 5

C. 7

D. 3

解析:执行语句“sample a(2),b(5)”;的结果是使n的值最终变为5,sample::add()语句调用函数static void add(),使得S=S+n=5。

9.下列字符串中,不可以用做C++标识符的是( )。(D)

A. y_2006

B. _TEST_H

C. Return

D. switch

解析:本题考查c++标识符的命名规则,其规则有如下几点:①所有标识符必须由字母、数字或下画线组成,且必须由字母或下画线开头;②所有标识符不能使用c++已有的关键字;③大、小写字母表示不同意义,即代表不同的标识符。选项C中虽然return是关键字,但因首字母大、小写不同,也可用于标识符,但不建议使用。故答案为D。

10.下列变量名中,合法的( )。(A)

A. CHINA

B. byte-size

C. double

D. A+a

解析:变量的定义要符合标识符的定义规则。选项B)byte-size中含有不合法的字符“.”;选项C)中的变量名是C++中的保留字;选项D)变量名中同样含有非法的字符“+”;只有选项A)符合要求。

11.函数swap(a,n)可完成对a数组从第1个元素到第n个元素两两交换。其中b[0]=1;b[1]=2;swap(b,2)。在运行调用函数中的语句后,b[0]和b[1]的值分别为(

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号