问题 单项选择题

下列程序执行后的输出结果是
void funcl(int i);
void func2(int i);
char st[]="hello,frlend!";
void funcl(int i)
cout<<st[i];
if(i<3)i+=2;func2(i);

void func2(int i)
cout<<st[i];
if(i<3)i+=2;funcl(i);

main()
int i=0; furicl(i); cout<<endl;

A.hello

B.hel

C.hlo

D.hlm

答案

参考答案:C

解析: 本题考察递归调用。分析func1可知,当i=0时,首先输出h,然后i变为2.调用fune (2),则输出str[2],应为1。分析到此就可以排除选项A和B。然后调用funcl(4),此时辅出str [4],为o,故可以选择正确答案为C。

问答题 简答题
单项选择题 A3/A4型题