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

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

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

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

选择题

1.设有关键码序列(66,13,51,76,81,26,57,69,23),要按关键码值递增的次序排序,若采用速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为( )。(A)

A. 23,13,5l,57,66,26,81,69,76

B. 13,23,26,51,57,66,81,76,69

C. 23,13,51,57,26,66,81,69,76

D. 23,13,51,57,81,26,66,69,76

解析:快速排序是起泡排序的改进。在快速排序中,任取一个记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它小的在一部分,关键码值比它大的在另一部分,再分别对两个部分实施上述过程,一直重复到排序完成。

2.在一棵–X树上,第5层的结点数最多是( )。(D )

A. 8

B. 9

C. 15

D. 16

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

3.下面程序段的正确输出是( )。

int w=4,x=3,y=2,z=1; cout<<(w<x?w:z<y?z:x)<<end1;(B)

A. 0

B. 1

C. 2

D. 3

解析:本题考查表达式作为变量进行输出,且表达式为两个三目表达式的嵌套,其中,第1个三目表达式z<y?z:x的值为1,接着计算第2个三目表达式w<x?w:1,值为1。

4.有如下程序:

#include<iostrcam>

using namespace std;

class AA{

int n;

public:

AA(int k):n(k){}

int get() { return n;}

int get()const{return n+1;}

};

int main()

{

AA a(5);

const AA b(6);

cout<<a.get()<<b.get()

return 0:

}

执行后的输出结果是( )。(B)

A. 55

B. 57

C. 75

D. 77

解析:语句AA a(5)调用的是AA(int k):n(k){},a.get()调用intget(){return;},结果会输出5;而常对象constAAb(6),b.get()调用的是intget()const{returnn+1:},会输出结果7。

5.下列重载函数中,正确的是( )。(B)

A. void fun(int a,float b);void fun(int C,float d)

B. void fun(int a,float b);void fun(float a,int b)

C. float fun(int a,float b);int fun(int b,float a)

D. int fun(int a,int b);float fun(int a,int b)

解析:所谓函数重载是指同一函数名可以对应多个函数实现。进行函数重载时,要求同名函数在参数个数上不同,或者参数类型上不同。

6.有如下程序:

#include

using namespace std;

class TestClass{

protected: ’

TestClass 0{cout<<’x’}

TestClass(char C){cout<<c;}

};

class TestClassl:public TestClass

{

public:

TestClass 1(char c){cout<<c;}

);

int main(){

TestClassl dl(’y’);

return 0:

}

执行这个程序,屏幕上将显示输出( )。(C)

A. y

B. yx

C. xy

D. yy

解析:程序中的类TestClass为基类,TestClassl为TestClass的派牛类。由main主函数入手,定义T’estClassl类型的对象d1,参数值为’V’。TestClassl类继承TestClass,所以主函数中“TestClassl dl(’y’);”语句首先调用调用基类中的“TestClass(){cout<<’x’;}”输出x,然后调用“TestClassl(char c){cout<<c;}”输出y,即答案为“xy”。

7.有如下程序:

#include

using namespace std;

class Sample{

friend long fun(Sample s);

public:

Sample(long a){x=a;}

private:

long x;

};

long fun(Sample s){

if(s.x<2)return 1;

return s.x*fun(Sample(s.x—1));

}

int main()

{

int sum=0;

for(int i=0;i<6;i++)

{sum+=fun(Sample(i));}

cout<<sum;

return 0;

}

执行这个程序的输出结果是( )。(C)

A. 120

B. 16

C. 154

D. 34

解析:本题考查默认构造函数,当i=0、1时,fun(Sample(i))为1;当i=2时,fun(Sample(i))为2;当i=3时,fun(Sample(i))为6;当i=4时,fun(Sample(i))为24;当i=5时,fun(Sample(i))为120。所以总和为154。

8.有如下程序:

#include

using namespace std;

class TestClass 1

{

public:

TestClass 1(){cout<<“TestClass 1”;}

~TestClass 1(){cout<<“~TestClass 1”;}<

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号