下面程序执行后的结果是( )。
#include<iostream>
using namespace std;
void func1(int i);
void func2(int i);
char st[]="hello, friend!";
void func1(int i)
cout<<st[i];
if(i<3)i+=2;func2(i);
void func2(int i)
cout<<st[i];
if(i<3)i+=2;func1(i);
void main()
int i=0;func1(i);cout<<endl;
A.ello
B.hel
C.hlo
D.him
参考答案:C
解析: 主函数中调用 func1() 函数,实参赋值为0,在该函数中先输出st[0],即“h,,;然后 func1() 函数又调用 func2() 函数,实参赋值为2,func2() 函数运行时先输出st[2],即“1”;然后又调用 func1() 函数,实参赋值为4,func1() 函数运行时先输出st[4],即“o”。