请问该代码的运行结果

来源:百度知道 编辑:UC知道 时间:2024/07/07 05:01:55
#include <iostream.h>
void print(int x)
{
if(x<=0)
return;
print(x-1);
for(int i=0;i<x;i++)
cout<<x<<" ";
cout<<endl;
}
void main()
{print(5);}

是12345还是54321?

1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
用的是递归,当x=1时进入函数,执行print(x-1)时,因为实参为0,不再往下执行,而是返回依次计算print(1),print(2),print(3),print(4),print(5).
for(int i=0;i<x;i++)
cout<<x<<" ";
cout<<endl;
这步输出的是 x个x,然后换行

12345
因为用的是递归

54321

12345