关于递归和斐波那契数列
这次的题目是要求用递归算法求斐波那契数列的第n项。
众所周知:斐波那契数列中的项等于前两项相加的和,第一项为0,第二项为1。那么我们可以轻易得到递归公式:
f(n)=f(n-1)+f(n-2);
其中,第一项为0,第二项为1:
if(n==1) return 0;
if(n==2) return 1;
然后得到如下代码:
#include<stdio.h>
int f(int n);
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",f(n));
return 0;
}
int f(int n)
{
if(n==1) return 0;
if(n==2) return 1;
else return f(n-1)+f(n-2);
}
浙公网安备 33010602011771号