(资料图片)
一、题文
下列程序执行后的输出结果是( )。 #include<stdio.h> void func1(int i); void func2(int i); char st[]="hello,friend!"; void funcl(int i) printf("%c",st[i]); if(i<3)i+=2;func 2(i); void func 2(int i) printf("%c",st[i]); if(i<3)i+=2;funcl(i); main() int i=0; funcl(i);printf("\n"); A) hello B) hel C) hlo D) hlm
二、解答
C三、分析
[解析] 本题首先调用函数funcl(0),输出st[0]=h,i值变为2,再调用函数func2(2),输出st[2]=1,此时i<3,执行i+=2,i值变为4,然后再调用函数funcl(4),输出st[4]=o,此时i值大于3,函数调用结束。因此,输出结果为hlo。本文到此结束,希望对大家有所帮助。