二级C++语言试题,我注定与你有一劫

发布于 2018-08-27 14:34  编辑:simi
0
计算机等级考试题库 扫码微信刷题


暑假期间,你是看剧还是刷计算机等级考试题库呢?其实这并不矛盾,在等剧更新的时间,赶紧进来刷刷题、复习一下,看剧、刷题,两不耽误,非常完美!以下二级C++语言试题,赶紧看看吧!


1.阅读以下程序

#include(iostream.h>

voidmain(  )

{

charline[10];

cin>>line;

cout<<1ine<}

如运行时输入“Thisisanexample.”,则程序的输出结果是(  )

A.This

B.Thisis

C.Thisisa

D.Thisisanexample

答案:A。【解析】本题考查C++cin输入流对象的使用规则,其特点是以空格、回车和tab为分隔符。因此thisis之间的空格告诉cin对象停止接收后面的数据。故正确答案为A

 

2.MyClass的定义如下,若要对value赋值,则下面语句正确的是(  )

classMyClass

{

public

MyClass(  ){}

MyClass(inti){value=newint(i);}

int*value;

};

A.MyClassmy;my.value=10;

B.MyClassmy;*my.value=10;

C.MyClassmy;my.*value=10;

D.MyClassmy(10);

答案:D。【解析】因题目中定义的指针value是指淘变量i的,所以直接利用语句MyClass(inti){value=newint(i);}value进行赋值即可。

 

3.A是类B的友元,类B是类C的友元,则下列说法正确的是(  )

A.B是类A的友元

B.C是类A的友元

C.A是类C的友元

D.以上都不对

答案:D。【解析】选项ABC都不正确,因为友元关系是单项的,并且没有交换性、传递性。

 

4.如有以下程序:

#include(iostream>

usingnamespacestd;

longfun(intn)

{

if(n)2)

return(fun(n-1)+fun(n-2));

else

return2;

}

intmain(  )

{

cout

}

则该程序的输出结果应该是(  )

A.2

B.3

C.4

D.5

答案:C。【解析】主函数中调用fun(3),在fun内部当n>2时,递归调用fun(n-1)+fun(n-2),否则返回2。所以当n=3时,调用fun(2)+fun(1),即返回2+2,等于4

 

5.下列程序执行结果是(  )

#include(iostream.h)

classA

{public

inta;

A(  )a(10){cout<};

voidmain(  )

{Aobj1;

Aobj2(obj1);

cout<<""<}

A.1010

B.编译错误缺少拷贝构造函数

C.10随机数

D.随机数随机数

答案:A。【解析】本题考查拷贝构造函数的知识。如果类中没有实现拷贝构造函数可以完成数据成员的自动赋值,对于复杂对象,则可能需要显式定义拷贝构造函数。

 

6.关于类和对象描述错误的是(  )

A.对象(Object)是现实世界中的客观事物,对象具有确定的属性

B.类是具有相同属性和行为的一组对象的集合

C.对象是类的抽象,类是对象的实例

D.类是对象的抽象,对象是类的实例

答案:C。【解析】C++中,类是用户自定义的一种数据类型,对象是类的实例,类定义了属于该类的所有对象的共同特性。一个类作为一种数据类型,它可以定义多个对象。

 

7.下列对重载函数的描述中,错误的是(  )

A.重载函数中不允许使用默认参数

B.重载函数中编译是根据参数表进行选择的

C.不要使用重载函数来描述毫不相干的函数

D.构造函数重载将会给初始化带来多种方式

答案:A。【解析】选项A中,重载函数中是允许使用默认参数的;为了使重载函数有意义,不要使用重载函数来描述毫不相干的函数;重载函数中编译是根据参数表进行选择的,包括参数的个数和类型。

 

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

#include(iostream.h>

voidsub(intxintyint*z)

{*z=y-x;}

voidmain(  )

{intabc;

sub(105&a);

sub(7a&b);

sub(ab&c);

cout((a<<""

B.-5-12-7

C.-5-12-17

D.5-2-7

答案:B。【解析】在C++语言中,调用函数不可能改变实参指针变量的值,但可以改变实参指针变量所指变量的值。

 

9.以下程序不用第3个变量实现将两个数进行对调的操作,画线处应为(  )

voidmain(  )

{intab;

scanf("%d%d"&a&b);

cin>>a>>b;

cout<<"a="

B.intp=a;

C."p=a;

D.p=a;

答案:B。【解析】本题思路巧妙,分析时可以发现b=(a+b)-b,则此时b中放的是a,完成交换工作的一半,然后要将b放到a中,将表达式展开,则为a=(a+b)-a,此时正好把b放到a中。此时完成全部的交换。





考无忧小编tips

不求时时刻刻在刷计算机等级考试题库,但求记住要劳逸结合刷题、复习。今天,你刷了多少题?复习了以上的二级C++语言试题了吗?






文章推荐:

全国计算机等级考试可以不考一级直接考二级吗?

2018年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”

全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)



温馨提示:

考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office

想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库

想知道更多关于计算机等级考试题库的最新资讯吗?点击进入>>>计算机等级考试题库资讯




本文网址:http://www.k51.com.cn/info/jsjdjks/1808/2745653.html
选择分享到: