【C语言】用迭代法计算第n个斐波那契数的值

//用迭代法计算第n个斐波那契数的值
思路:
1.斐波那契数的定义:下一个数是前两个数之和,并且第一和第二个数均为1。
2.计算第n个数不用递归,肯定要用到循环
3.定义三个变量,result=前一个数+倒数第二个数.
4.下次执行循环时 前一个数=result,倒数第二个数=上次循环的前一个数

#include<stdio.h>
long fibonacci(int n)
{
    long result;
    long previous_result;
    long next_order_result;
    result = previous_result = 1;
    while (n > 2)
    {
        n -= 1;
        next_order_result = previous_result;
        previous_result = result;
        result = previous_result + next_order_result;
    }

    return result;
}
int main()
{
    int n = 0;
    printf("请输入要查询的数:\n");
    scanf_s("%d", &n);

    printf("%d\n", fibonacci(n));
    return 0;
}

这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值