int fbi(int n)
{
if (n == 0 || n == 1)
{
return 1;
}
else
{
return fbi(n - 1) + fbi(n - 2);
}
}
int fbitail(int n,int a,int b)
{
if (n == 0)
{
return b;
}
else
{
return fbitail(n - 1, b, a + b);
}
}
int facttail(int n, int a)
{
if (n < 0)
return 0;
else if (n == 0)
return 1;
else if (n == 1)
return a;
else
return facttail(n - 1, n * a);
}
每个递归定义必须至少有一个条件,满足时不再进行,也就是说不在引用自身而是返回值退出。。。。