C语言-计蒜客-斐波那契数列(非数组)

小蒜蒜最近学习了斐波那契数列。

斐波那契数列是指这样的数列:数列的第一个和第二个数都为 1、1,接下来每个数都等于前面2个数之和。

给出一个正整数 k,要求斐波那契数列中第 k 个数是多少。

输入格式
输入一行,包含一个正整数 k。(1≤k≤46)

输出格式
输出一行,包含一个正整数,表示斐波那契数列中的第 k 个数。

例输入:19
输出:4181

点击查看代码
#include <stdio.h>

int main(){
    int k;
    int f1=1,f2=1;
    scanf("%d",&k);

    for(int i =2 ;i<k;i++)
    {
        f1+=f2;
        f2+=f1;
        i++;		//使用多一次次数,实际中一次循环中f1代表x。
		//而f2代表x+1,如果按照寻常循环,则会过大。
    }
    if(k%2==0)printf("%d",f2);
    else printf("%d",f1);     //结果筛选。
    
    return 0;
}

参考:https://blog.csdn.net/weixin_45075787/article/details/114232445

posted @ 2023-08-04 18:25  直男爱穿粉衬衫  阅读(122)  评论(0编辑  收藏  举报