//用迭代法计算第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;
}