求第n个斐波那契数(不用递归的方法,用循环)

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int Fib(int n)
{
	if (n == 1 || n == 2)    //  |按位或,||逻辑或
	{
		return 1;
	}
	int last1 = 1;    //第i - 1项
	int last2 = 1;    //第i - 2项
	int cur = 0;       //第 i 项
	for (int i = 3; i <= n; ++i)
	{
		cur = last1 + last2;
		last2 = last1;
		last1 = cur;
	}
	return cur;
}
int main()
{
	int n;
	printf("请输入一个数字:\n");
	scanf("%d", &n);
	printf("%d \n", Fib(n));
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43765564/article/details/85344799