一段C语言程序解读,求完整

2025-04-07 16:53:36
推荐回答(1个)
回答1:

这题目我见过,不过粘贴时好像被“吃掉”了+号,照此程序的话会死循环的。中间部分应该是:
void func1(int i)
{ printf("%c",st[i]);
if(i<3)
{ i+=2; //此处有变化
func2(i);
}
}
void func2(int i)
{ printf("%c",st[i]);
if(i<3)
{ i+=2; //此处有变化
func1(i);
}
}
程序的分析如下:

从main()开始执行,调用fun1(0)
先输出h,然后i变为2,再调用fun2(2)
在fun2中,输出l,然后i变为4,再调用fun1(4),输出o后,直接返回
全部的输出就是:
hlo