为了帮助大家复习好2014年计算机等级考试,本次我们考吧网特为广大考生整理了计算机等级考试模拟试题,希望广大考生能够喜欢。本次主要汇编了计算机等级《二级C++》精选试题:
一、选择题(每小题1分,共40小题,共40分)
33.下列表达式的值为false的是( )。
A.1<3&&5<7B.!(2>4)
C.3&0&&lD.!(5<8)‖(2<8)
34.所有在函数中定义的变量及函数的形式参数,都属于( )。
A.全局变量
B.局部变量
C.静态变量
D.常量
35.有以下程序:
#include
usingnamespacestd;
classR
{public:
R(intr1,intr2)
{R1=r1;
R2=r2;}
voidprint();
voidprint()const;
private:
intR1,R2;};
voidR::print()
{cout< voidR::print()const
{cout< intmain()
{Ra(5,4);
constRb(20,52);
b.print();
return0;}
执行后的输出结果是( )。
A.5,4
B.20,52
C.0,0
D.4,5
36.下列程序的执行结果是( )。
#include
#include
classTestClass
{
public:
intX,y;
TestClass(){x=y=0;}
TestClass(inta,intb)(x=a;y=b;}voiddisp()
{
cout<<"x="< C.chars[10];s="BOOK";
D.char*S;s="BOOK!";
38.有下列程序:
#include
intfun(intx,inyy)
{if(x==y)return(x);
elsereturn((x+y)/2);
}
voidmain()
{inta=4,b=5,C=6;
printf("%d",fun(2*a,fun(b,c)));
}
程序运行后的输出结果是()。
A.3
B.6
C.8
D.12
39.设函数中有整型变量n,为保证其在未赋初值的情况下初值为0,应选择存储类别是( )。
A.auto
B.register
C.static
D.auto或register
40.有下列程序:
#include
intb=2:
intfun(int*k)
{b=*k+b;return(b);}
voidmain()
{inta[1O]={1,2,3,4,5,6,7,8},i;
for(i=2;i<4;i++){b=fun(&a[i])+b;printf
("%d",b);}
printf("");
}
程序运行后的输出结果是( )。
A.1012
B.810
C.1028
D.1016
33.C。【解析】false为逻辑常量,选项A为1小于3并且5小于7,这个是真的;选项B是2不大于4也为真;选项D是5大于8或者2小于8,只要有一个为真,D就为真,所以选项D也为真。选项C中“&”为按位的与运算,3和0按位与,然后再与1,结果为假。
34.B。【解析】全局变量是在所有函数定义、类定义和程序块之外声明的变量,局部变量是在某个函数定义、类定义或程序块之内声明的变量。用关键字Static声明的局部变量称为静态变量,故正确答案为B项。
35.B。【解析】使用const关键字修饰的对象称为常对象,题中对象b被声明为类R的常对象。使用const关键字说明的成员函数称为常成员函数,类R中用const重载了函数print()。在使用常对象和常成员函数时应注意的是:const是函数类型的一个组成部分,因此在常成员函数部分也要带const关键字;常成员函数不能更新对象的数据成员,也不能调用该类中没有用const修饰的成员函数;如果将一个对象说明为常对象,则通过该常对象只能调用它的常成员函数,不能调用其他的成员函数;const关键字可以参与区分重载函数。
36.B。【解析】由主函数入手,定义了类TestClass的对象s1(2,3),当类对象进入其作用域时调用构造函数,构造函数应该是调用具有参数的“TestClass(inta,intb){x=a;y=b;}”,然后调用成员函数disp(),则输出为“cout<<"x="<
推荐阅读: