首页 > 全部 > 二级C++ > 国家二级C++机试(选择题)模拟试卷480

国家二级C++机试(选择题)模拟试卷480

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

国家二级C++机试(选择题)模拟试卷480

选择题

1.在一棵二叉树上,第5层的结点数最多是( )。(D)

A. 8

B. 9

C. 15

D. 16

解析:根据二叉树的性质:二叉树第i(i>1)层上至多有2i-1个结点。得到第5层的结点数最多是16个。

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

A. 有一个以上根结点的数据结构不一定是非线性结构

B. 只有一个根结点的数据结构不一定是线性结构

C. 循环链表是非线性结构

D. 双向链表是非线性结构

解析:在数据结构中,树这类的数据结构只有一个根结点,但它不是线性结构。

3.下列选项中,不是C++关键字的是( )。(B)

A. class

B. function

C. friend

D. virtual

解析:class、friend、virtual都是C++的关键字,而。funtion是VB的关键字。

4.Windows环境下,由C++源程序文件编译而成的目标文件的扩展名是( )。(C)

A. cpp

B. exe

C. obj

D. lik

解析:在VC6.0集成开发环境下,用户可以使用编译(compile)命令将一个.cpp为扩展名的C++源程序文件转换成一个以.obj为扩展名的目标文件。

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

A. = () [] ->

B. + – ++ —

C. > < >= <=

D. += -= *= /=

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

6.冒泡排序在最坏情况下的比较次数是(C)

A. n(n+1)/2

B. nlog2n

C. n(n-1)/2

D. n/2

解析:对n个结点的线性表采用冒泡排序,在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要的比较次数为n(n-1)/2。

7.设二叉树的后序序列与中序序列均为ABCDEFGH,则该二叉树的前序序列为(A)

A. HGFEDCBA

B. ABCDEFGH

C. ABCDHGFE

D. DCBAHGFE

解析:后序遍历中,最后一个字母是根结点,也就是H是根结点;在中序遍历中,根结点前面的是左子树、后面的是右子树,H后面没有,因此该树没有右子树。同理,可判断出该树是第一个完全的左子树。由此可画出这个二叉树,然后根据二叉树可的前序序列为HGFEDCBA。

8.下列关于函数重载的叙述中,错误的是( )。(C)

A. 重载函数的参数个数可以不同

B. 重载函数的参数类型可以不同

C. 重载函数的返回值类型必须不同

D. 重载函数的参数个数或参数类型必须有所不同

解析:两个或两个以上的函数,具有相同的函数名,但是形参的个数或者类型不同,编译器根据实参和形参的类型及个数进行最佳匹配,自动确定调用哪个函数,这就是函数的重载。

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

#include<iostream>

using namespace std;

void fun(char**q)

{

++q;

cout<<*q<<end1;

}

main()

{

static char*s[]={’’HI\\(C)

A. 为空

B. HI

C. HELLO

D. TEST

解析:由程序main主函数入手,调用fun函数,在fun函数中执行“cout<<*q<<end1;”语句实现程序输出。主函数中变量char*s[]为指针数组,char**p表示p指向的字符指针数据。*p就代表p指向的字符指针。语句“p=s;\\

10.用树形结构表示实体之间联系的模型是( )。(C)

A. 关系模型

B. 网状模型

C. 层次模型

D. 以上三个都是

解析:层次模型的基本结构是树形结构,这种结构方式在现实世界中很普遍,它们自顶向下、层次分明。

11.软件测试的目的是(A)

A. 发现程序中的错误

B. 修改程序中的错误

C. 避免程序中的错误

D. 发现和修改程序中的错误

解析:软件测试的目的是:发现一些可以通过测试避免的开发风险;实施测试来降低所发现的风险;确定测试何时可以结束;在开发项目的过程中将测试看作是一个标准项目。

12.在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是( )。(C)

A. operator+有两个参数,operator*有两个参数

B. operator+有两个参数,operator*有一个参数

C. operator+有一个参数,operator*有两个参数

D. operator+有一个参数,operator*有一个参数

解析:此题考查的是运算符的重载。运算符可重载成员函数,也可重载为友元函数。当重载为成员函数时,运算符重载函数的形参个数要比运算符操作数的个数少一个;当重载为友元函数时,其参数个数应与操作数的个数相同。

13.有如下程序:

#include<iostream>

using namespace std;

void f1(inta x,int&y){int z=x;x=y;y=z;}

void f2(int x,int y){int z=x;x=y;y=z;}

int main() {

int x=10,y=26;

f1(x,y);

f2(x,y);

cout<<y<<end1;

return 0;

}

运行时的输出结果是( )。(A)

A. 10

B. 16

C. 26

D. 36

解析:子函数f1中的形参是引用变量,所以执行子函数实现了变量x,y值的交换,变量x的值等于26,而变量y的值等于10。而子函数f2中的形参是普通变量,因为C++的函数之间的参数传递是传值,所以执行函数f2不能实现变量x,y值的交换。

14.在下列函数原型中,可以作为类从构造函数的是( )。(D)

A. voidAA(int);

B. int AA0;

C. AA(int)const;

D. AA(int);

解析:此题考查的是构造函数的概念。构造函数是类的一个特殊成员函数,它与类同名,并且没有返回值。选项A、B不符合要求。选项C中函数AA,会更新对象的数据成员。

15.下列关于this指针的描述中,正确的是( )。(D)

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号