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

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

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

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

选择题

1.下列字符串中可以用作C++标识符的是( )。(D)

A. 2009var

B. goto

C. test_2009

D. _123

解析:标识符是用户为程序中各种需要命名的“元素”所起的名字。标识符的组成要符合一定的规则:

①标识符是一个以字母或下划线开头的,由字母、数字、F划线组成的字符串。

②标识符不能与任意一个关键字同名。

③标识符中的字母区分大小写。

④标识符不宜过长。c++语言一般设定一个标识符的有效长度为32个字符。

由这四条规则可知,选项D)为正确答案。

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

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

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

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

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

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

3.有如下程序:

#include<iostream>

using namespace std;

int main()

{

int*p;

*p=9;

cout<<\\(D)

A. 编译时出现语法错误,不能生成可执行文件

B. 运行时一定输出:The value at p:9

C. 运行时一定输出:The value at p:*9

D. 运行时有可能出错

解析:题目程序中“int,*p;”是定义了一个指针变量p,“*p=9;”是将p当前指向的指针赋为9。指针p在执行这个赋值操作前并没有初始化这个变量p,所以会有p未初始化的警告错误。

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

#include<iostream.h>

int x=3;

void main()

{

void fun();

int i;

for(i=1;i<x;i++)

fun();

}

void fun()

{static int x=1;

x*=x+1;

cout<<x<<’’ ’’;

}(C)

A. 3,3

B. 2,2

C. 2,6

D. 2,5

解析:由主函数入手,在for循环中调用fun函数,其中调用次数为2次。fun中x为静态变量,有效到文件结束,所以第一次调用为x=x*(x+1)=1*(1+1)=2,第二次调用2*(2+1)=6。

5.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次人栈,然后再依次出栈,则元素出栈的顺序是( )。(B)

A. 12345ABCDE

B. EDCBA54321

C. ABCDEl2345

D. 54321 EDCBA

解析:栈是先进后出的原则组织数据,所以入栈最早的最后出栈,所以选择B。

6.有如下程序:

#include<iostream>

using namespace std;

class Test{

public:

Test(){n+=2;}

~Test(){n-=3;}

static int getNum(){return n;}

private:

static int n;

};

int Test::n=1;

int main()

{

Test*p=new Test;

delete p;

cout<<\\(A)

A. n=0

B. n=1

C. n=2

D. n=3

解析:语句Test*p=new Test;会调用类的构造函数Test() {n+=2;},使n的值由原来的1变为3,然后delete p调用类的析构函数~Test() {n-=3;},因为n是static型变量,所以会在3的基础上减3使得输出结果为0。

7.对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )。(C)

A. log2n

B. n/2

C. n

D. n+1

解析:在进行顺序查找过程中,如果被查的元素是线性表中的最后一个元素,或者被查元素根本不在线性表中,则为了查找这个元素需要与线性表中的所有元素进行比较,这是顺序查找的最坏情况,需要比较的次数为n次。

8.有如下程序:

#include

using namespace std;

class ONE{

int c;

public:

ONE():c(0){cout<<l;}

ONE(int n):c(n){cout<<2;)

);

class TWO{

ONE onel;

ONE one2;

public:

TWO(int m):one2(m){cout<<3;}

};

int main(){

TWO t(4);

return 0;

)

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

A. 3

B. 23

C. 123

D. 213

解析:由类TWO的定义可知,其成员为类ONE的两个对象onel和one2。所以在主函数中构建类TWO的对象t(4)时,先后调用类ONE的构造函数ONE():c(0){tout<l<1;}和ONE(int n):c(n){cout<<2;}输出12,然后再调用类TWO的构造函数T’WO(int m):one2(m){cout<<3;},输出3。

9.在E—R图中,用来表示实体的图形是( )。(A)

A. 矩形

B. 椭圆形

C. 菱形

D. 三角形

解析:在E—R图中,用矩形表示实体集,在矩形内写上该实体集的名字:用椭圆形表示属性;用菱形(内部写上联系名)表示联系。

10.有如下程序:

撕nclude

using namespace std;

class AA{

int k;

protected:

int n;

void setK(int k){this一>k=k;}

public:

void setN(int n){this一>n=n;}

};

class BB:public AA{/*类体略*/};

int main()

{

BB x;

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号