用c语言实现求斐波那契数列中的任意项的值

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

由此可见斐波那契数列是从第三项开始的值为前两项之和,即
1,2,3,5,8,13,21…

用c语言实现求某项的值:

#include 
#include 

int main(void){
    int n,i;
    int f1,f2,f3;
    f1=1;
    f2=2;
    printf("请输入待求项:");
    scanf("%d",&n);
    if (1==n) {
        
        printf("待求项为%d\n",n);
    }else if (2==n){
        printf("待求项为%d\n",n);
    }else{
        for (i=3; i<=n; i++) {
            f3=f1+f2;
            f1=f2;
            f2=f3;
    }
        printf("待求项为%d\n",f3);
    }
}

注意:核心即为给出第一项为1,第二项为2,用if语句判断输入的项数是否为前两项之后,用for循环语句从第二项开始循环至待求项,循环体内容即为前两项之和,然后将新项作为第二项,将之前的第二项作为第一项后继续循环即可。

你可能感兴趣的:(代码练习)