题目描述
编写计算斐波那契(Fibonacci)数列的第 nnn 项。n<40n \lt 40n<40。数列递推公式为:fn={1n=1,2fn−1+fn−2n≥3f_n=\begin{cases} 1 & n = 1, 2 \\ f_{n-1} + f_{n-2} & n \ge 3 \end{cases}fn={1fn−1+fn−2n=1,2n≥3
输入
输入整数 nnn 的值。
输出
输出 fnf_nfn 的值。
输入输出样例
样例输入 #1
复制
7
样例输出 #1
复制
13
上代码
#include<stdio.h>
int fac(int n)
{
if(n<=2)
return 1;
else
{
return fac(n-1)+fac(n-2);
}
}
int main()
{
int n=0;
scanf("%d",&n);
int ret=0;
ret=fac(n);
printf("%d",ret);
return 0;
}
tips
40以上的数据就不建议用递归了,可以用for循环或者数组实现,因为很容易超时。