7-3 函数-斐波那契数列 (20分)

递归的思想是大事化小。

斐波那契数列(Fibonacci Sequence),又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……。在数学上,斐波纳契数列以递推的方法定义为:F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N)。计算斐波那契数列第n项的值。

输入格式:

输入一个大于等于1,小于等于60的整数n。

输出格式:

输出第n项的数列值,数列值为double类型,不输出小数位数。

输入样例:

20

输出样例:

6765

输入样例:

1

输出样例:

1

#include
//F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N)
//递归
double Fibonacci(int n);
int main()
{
    int n;
    scanf("%d",&n);
    if(n==1)
        printf("1");
    else
        printf("%.0lf",Fibonacci(n-1));  //从第二项开始


    return 0;
}

double Fibonacci(int n)
{
	if(n == 1 || n == 2)
	{
		return n;
	}
	 return Fibonacci(n-1) + Fibonacci(n-2);
}

 

你可能感兴趣的:(c语言)