递归定义:
把一个直接调用自己或通过一系列的调用语句间接地调用自己的函数,称作递归函数
递归方式:
#include<stdio.h>
//递归函数定义
int Fbi(int i){
if(i<2)
return i==0 ? 0 : 1;
return Fbi(i-1)+Fbi(i-2);//这里Fbi就是自己,它在调用自己
}
int main(){
int i;
for(i=0;i<40;i++)
printf("%d ",Fbi(i));
return 0;
}
在上述代码中,比如i=5,其运算过程如下:
迭代方式:
#include<stdio.h>
int main(){
int i;
//迭代方式输出
int a[40];
a[0]=0;
a[1]=1;
printf("%d ",a[0]);
printf("%d ",a[1]);
for(i=2;i<40;i++){
a[i]=a[i-1]+a[i-2];
printf("%d ",a[i]);
}
return 0;
}