使用VC6打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,补充空出的代码。函数sum(intn)返回1,2,3,…,n的和。其中n大于0。
程序要求使用递归实现上述功能。
注意:不能修改程序的其他部分,只能补充sum函数。
试题程序:
#include
#include
intsum(intn)
{
}
voidmain()
{
cout<<"1+2+3+…+100="<
endl;
return;
}
第1题:
在C++中,三种派生方式的说明符号为()、()、()不加说明,则默认的派生方式为()
public 、private 、 protected、private
【解析】在C++中,三种派生方式的说明符号为不加说明,则默认的派生方式为private
第2题:
十进制28和3.6的类型分别是__。
int和double
【解析】整型和双精度型。注意除非定义了float变量。实型常量隐含为 double型。
第3题:
运算符重载仍然保持其原来的优先级、__和__
本题为填空题,请给出正确答案,谢谢!
【参考答案】结合性、语法结构
【解析】运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构。
第4题:
执行以下程序段:
a$=”Visual Basic Programmin9”b$=”C++”
c$:UCase(Left$(a$,7))&b$&Right$(a$,12)后。变量e$的值为()。
A.Visual BASIC Programming
B.VISUAL C++Programming
C.visual C++Programming
D.VISUAL BASIC Programming--/--
B
【解析】UCase(Left(a$,7))是从字符串a的左边向右取出7个字符,然后再全部转换为大写字母,结果是:”VISUAL一”:Right$(a$,12)是从字符串a的右边向左取出12个字符,结果为”一Programming”,&是字符串连接符,把”VISUAL一”&”C++”&”一Programming”连接在一起,合成字符串”VISUAL—C++一Programming”,并把它赋给字符串变量C,所以字符串变量C的值就是合成的字符串。故B选项正确。
第5题:
下列循环中,可以正常结束的是
B
解析:选项A中先执行一次循环体,i的值变成1,测试循环结束条件,i<1不成立,循环继续,i值总是增加,达不到循环结束条件,不能正常结束。选项8先执行循环体,i值加1变成2,再测试循环结束条件i=10,继续循环,i值再加1,直到i变为10,循环结束。选项C中i初值为10,先执行一次循环体,使i加1,然后判断继续循环的条件i>1是否成立,此后i值不会小于等于1,循环会一直继续下去,不会正常结束。选项D中i初值为10,每次循环i值减2,因此它总是偶数,而循环结束的条件是i=1,不可能达到,循环会一直继续下去。
第6题:
下列程序段执行后,j值是()。
for(int i(0), j(0); i<10; i++)
if(i) j++;
A.0
B.9
C.10
D.无限
B
第7题:
下面不是键盘事件的是()。
A.KeyDown
B.KeyUp
C.KeyPress
D.KeyCode
D
【解析】KeyCede是KeyD0Ⅷ、K叮t’髓事件f参数,不是键盘事件,它返回的是按键相应的^盥卫字符代碉故选项D错误。
第8题:
下面程序的输出结果是【】。
#include
void main()
{
int a[6]={1,2,3,4,5,6};
for(int i=0;i <5;i++)
cout <<
cout <
}
12345
第9题:
设a=10,b=4,c=5,d=7,表达式8>bAmdNotc
A.True
B.False
C.1
D.0
B
【解析】本题中包含的三种运算符的优先级别由高到低依次为:算术运算符、比较运算符、逻辑运算符。其中,逻辑运算符的优先级为:Not(非)→And(与)→Or(或)。And前面表达式的值为Trae,And后面表达式的值为False,所以最后输出的也是Fslse。因此,答案为B.。
第10题:
假定有如下程序:
运行程序,单击窗体,依次输入3,6、9,输出结果为
A.3
B.6
C.9
D.1
A
【解析】For循环对数组a和b赋值。b(3)=a(1),b
(2)=a(2),b(1)=a(3),循环结束时k=3。因此选A.。