满足基本条件后,为什么控件返回到程序顶部?它应该只执行递归调用后出现的行。 {output 54322233}显示控件返回到代码顶部:
void print(int a)
{while(a!=1)
{
printf("%d",a);
a--;
print(a);
}}
最佳答案
您的代码同时实现了递归和迭代!让我们将两者分开:
迭代:
void print(int a)
{
while (a >= 1)
{
printf("%d\n", a);
a--;
}
}
递归:
void print(int a)
{
if (a >= 1)
{
printf("%d\n", a);
print(a - 1);
}
}