计算机二级《C++》考试试题及答案2016计算机二级《C++》考试试题及答案
1[填空题]运算符重载仍然保持其原来的优先级、和。
参考解析:结合性、语法结构。
解析:运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构。
2[单选题]有以下程序:
#include
voidfun(inta,intb,intC.
{a=456,b=567,c=678;}
voidmain()
{
intX=10,Y=20,Z=30;
fun(X,Y,z);
aout<
}
输出结果是()。
A.30,20,10
B.10,20,30
C.456,567,678
D.678,567,456
字符串截取不改变原字符串
参考答案:B
参考解析:本题考查函数中变量的作用范围,在主函数中给变餐x、Y、Z赋值,然后将其作为实参传递给了函数fun(),虽然在函数
fun()中改变了这3个变量的值,但只是同名的局部变量,不影响函数中变量的值,所以在调用函数fun()结束后,主函数3个变量的值未改变。
3[单选题]若有定义语句“doublex,y,*px,*Py;执行了
px=&x;py=&y;”后,正确的输入语句是()。
A.scanf("%f%f",x,y);
B.scanf("%f%f"&x,
&y);C.scanf("%If%le",px,py);D.scanf("%lf%If"x,y);
参考答案:C
参考解析:此题主要考查输入函数的字符格式,lf和le表示以带小数点的数学形式或指数形式输入浮点数。
4[单选题]继承机制的作用是()。
A.信息隐藏
B.数据封装
C.定义新类
D.数据抽象
参考答案:C
参考解析:数据封装就是数据抽象,即信息隐藏;而继承是实现程序复用的基础。
5[单选题]若有如下类声明
classMyClass{
public:
MyClass(){cout<<1;}
};
执行下列语句
MyClassa,b[2],*P[2];
以后,程序的输出结果是()。
A.11
B.111
C.1111
D.11111
参考答案:B
6[单选题]下列选项中正确的语句是()。
A.chars[];s="BOOK!";
B.char*s;S={"BOOK!");
C.chars[10];s=" BOOK";
D.char*S;s="BOOK!";
参考答案:D
参考解析:在选项D中,字符指针s指向字符串常量BOOK!。故
选项D正确。
7[填空题]__________是一种特殊的成员函数,它主要用来为对
象分配内存空间,对类的数据成员进行初始化并执行对象的其他内
部管理操作。
参考解析:构造函数
【解析】构造函数的主要作用是对数据成员初始化,系统为成员分配内存时,保留这些存储单元的原状。
8[简答题]使用VC++6.0打开考生文件夹下的源程序文件  2.cpp。完成函数fun(char*sl,char*s2)的空出部分。函数fun(char*s1,char*s2)的功能是将在字符串s1中下标为偶数的字符,紧随其后重
复出现一次,放在一个新串s2中,s2中字符按原字符串中字符的
顺序排列。(注意0为偶数)
例如:当s1中的字符串为“abcdef”时,s2中的字符串应为“aaccee”。
注意:不要改动main函数,不得增行或删行,也不得更改程序
的结构。
试题程序:
#include(iostream.h)
voidfun(char*s1,char*s2)
{
}
voidmain()
{
charsi[100】,s2【1OO];
cout<<"Pleaseenterstringstrin9:"<
fun(s1,s2);
cout<<"Theresultis:"<
return;
}
参考解析:
inti;
for(i=0;s1[i]!=0;i++)//循环判断每一个字符
{
if(i%2==0)//判断字符串中下标为偶数位置
{
s2[i]=s1[3];
s2[i+1]=s1[i];
s2[i+2]='\0';//新串添加尾符
}
}
【解析】判断一个字符串中的某一个字符下标i是否为偶数,可用“i%2==0”来判断。对串s1中各个字符串逐个进行考查,满足条
件的字符就顺序放在新串s2中,否则就不存放。所有字符处理完成后,记得在新串s2的末尾加上结束符“'\0'。
9[简答题]使用VC6打开考生文件夹下的源程序文件2.cpp。阅
读下列函数说明和代码,补充空出的代码。函数sum(intn)返回1,2,3,…,n的和。其中n大于0。
程序要求使用递归实现上述功能。
注意:不能修改程序的其他部分,只能补充sum函数。
试题程序:
#include
#include
intsum(intn)
{
}
voidmain()
{
cout<<"1+2+3+…+100="<
endl;
return;
}
参考解析:return(n==1)?1:n+sum(n-1);
【解析】本题主要考查三目运算符?:的使用和递归函数的编制。程序功能是计算前n个自然数的和,n为参数。程序的运算过程如下,不是一般性,假设n为3,首先执行sum(3),因为3不等于1,所以return语句返回的值为3+sum(3-1),然后执行sum(3-1)即
sum(2),2不等于1,所以return语句返回的值为2+sum(2-1),然

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。