第一名居然是他!C++语言程序设计试题

发布于 2018-09-14 19:51  编辑:大黎
0
计算机等级考试题库 扫码微信刷题

路灯经过一夜的努力,才无愧地领受第一缕晨光的抚慰。小编还在加班加点为考生们整理C++语言程序设计的相关资料呢~也希望在明天的计算机二级考试中大家能娶到一个很好的成绩。



1.下列定义中P指向的地址可更改,但*P不能够更改的是(  )。

A.constint*P;

B.int*constP;

C.constint*constP;

D.int*P;

答案:A。【解析】“constint*P;”是只能改变指针地址,“int*constP;”是只能改变*P的内容,“constint*constP;”是指针的地址和*P的内容都不能改变,“int*P;”是两者都能改变。

 

2.如果表达式“--x/y”中的“--”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可以表示为(  )。

A.operator/(X.operator--(  ),y);

B.operator/(operator--(x),y);

C.X.operator--(  ).operator/(y);

D.y.operator/operator--(x));

答案:B。【解析】本题考查运算符的重载。假定已经作为某个类的成员函数重载了二元运算符+,且c1、c2都是该类的对象,则“c1.operator+(c2)”,与“c1+c2”含义相同。如果+作为该类的非成员函数重载,则“operator+(c1,c2)”与“c1+c2”含义相同。同理,运算符“/”作为友元函数重载,则“(--x)/y”与表达式“operator/((--x),y)”相同。前缀运算符“--”作为友元函数重载,则“--X与operator--(x)”相同,所以组合起来是“0perator/(operator--(x),y);”,即B选项。

 

3.下列程序输出的结果是(  )。

#include

funl(chara,charb){charC;c=a;a=b;b=C;)

fun2(char*a,charb){charC;c=*a;*a=b;b=c;)

fun3(char*a,char*b){charC;C=*a;*a=*b;*b=C;)

voidmain(  )

{

chara,b;

a=’A’;b=’B’;fun1(a,b);putchar(a);putchar(b);

a=’A’;b=’B’;fun2(&a,b);putchar(a);putchar(b);

a=’A’;b=’B’;fun3(&a,&b);putchar(a);putchar(b);

putchar(’\n’);

}

A.BABBAB

B.ABBBBA

C.ABBABA

D.ABABBA

答案:B。【解析】由程序中的主函数main入手,分别调用fun1,fun2,fun3函数,得出输出结果。其中,3个函数都是实现的两个形参的交换功能,只是值传递的方式不同,有的是引用,有的是传值。第一个函数中参数采用的是值传递的方式,形参的变化不影响实参。所以d调用funl后,实参a和b并没有交换,仍然是AB。第二个调用中,实参a采用的是地址,即传递的是地址,所以形参a的改变会影响实参a的值,即BB。同理,调用fun3后为BA。

 

4.下面程序的结果是(  )。

#include(iostream.h>

classA

{

inta;

public:

A(  ):a(1){}

voidshowa(  )(cout<};

classB

{

inta;

public:

B(  ):a(2){}

voidshowa(  ){cout<};

classC:publicA,publicB

{

inta;

public:

C(  ):a(3){}

voidshowa(  ){cout<};

voidmain(  )

{

CC;

C.showa(  );

}

A.1

B.2

C.3

D.程序有错误

答案:C。【解析】类A,类B,中都有showa函数,类C继承后再次重写showa函数就解决了继承的二义性,这时C.showa函数显示的就是类C中的showa的值。

 

5.有以下程序:

voidmain(  )

{inta=5,b=4,c=3,d=2;

if(a>b>c)

cout=d)==1)

cout

cout<}

A.2

B.3

C.4

D.编译时有错,无结果

答案:B。【解析】本题考查逻辑表达式的结合特性,即左结合性。对于表达式a>b>e,首先判断a>b为真,结果为1,然后判断1>e,为假,故转去判断c-1>=d是否成立,成立,结果为1,再判断l=1,结果为真,因此,执行d+1,答案为B。


活在当下,做在当下。尽管明天将要迎来考试,但今天的时间还是可以多一些翻阅计算机二级考试关于C++语言程序设计试题


文章推荐:

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

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

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

 

 

温馨提示:

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

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

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


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