我试图编写一个函数,它将取一个整数并返回它的阶乘。我用过c ++语言。 实际代码应为:
int f(int x)
{
if(x==0)
return 1;
else if(x>=1)
return x=x*f(x-1);
else
return 1;
}
这是正确的形式。的但是,
int f(int x)
{
if(x>1)
x=x*f(x-1);
}
即使我没有提到任何“回归”,这也行得通。此外,当递归转到基本情况时,没有什么可以返回!
那么,它实际上是如何运作的? :o