要求
用递归方法求斐波那契数列中第n项的值。
代码
#include<stdio.h>
long fun(int g)
{
switch(g)
{
case 0:return 0;
case 1:
case 2:return 1;
}
return fun(g-1)+fun(g-2);
}
int main()
{
long fib;
int n;
printf("Input n:");
scanf("%d",&n);
printf("n=%d\n",n);
fib=fun(n-1)+fun(n-2);
printf("fib=%d\n",fib);
return 0;
}
结果
斐波那契数列前几项为1,1,2,3,5,8,13,21,34,55,89……