c语言函数递归的算法

Python016

c语言函数递归的算法,第1张

这是一个递归调用fun(x)的算法

首先会计算x=1时,因为x是int型,所以x/2==0,返回1,所以打印1.

然后再计算x=2时,这时返回x%2=0,所以打印0;

再计算x=4时,同样返回x%2=0,所以打印0;

最后计算x=8时,返回x%2=0,所以打印0。

所以屏幕输出的就显示1000 。

我举个例子:

①斐波那契数列:1,1,2,3,5,8,13,21,34......

迭代:int Fib[N]

Fib[0]=1Fib[1]=1

for(i=2i<Ni++)

Fib[i]=Fib[i-1]+Fib[i-2]

}

递归:int Fib(int n)

{ if(n==0||n==1)return 1

else return (Fib(n-1)+Fib(n-2))

}