怎么求斐波那契数

目录

一.斐波那契数列是什么

二.怎么求第n个斐波那契数

              1.递归方式实现

              2.非递归方式实现

三.小结


一.斐波那契数列是什么

斐波那契数列是一个整数序列,序列是一系列数字,其特征是每个数字都是他前面两个数字之和,序列的前两个数字都是1。斐波那契数列表如下所示:

    1,1,2,3,5,8,13,21,34..............

二.怎么求第n个斐波那契数

因为第n个斐波那契数为前两个数字之和,所以他的表达式可以看作 n=(n-1)*(n-2)。

主函数:

int main()
{
	int i = 0;
	scanf("%d", &i);
	int ret=Fib(i);
	printf("%d\n", ret);
	return 0;
}

1.递归方式实现

int Fib(int x)
{
	if (x <=2)
		return 1;
	else
	return Fib(x - 1) + Fib(x - 2);
}

2.非递归方式实现

    

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6I-c6I-c5LiN5oGw6I-c,size_20,color_FFFFFF,t_70,g_se,x_16

int Fib(int x)
{
	int a = 1;
	int b = 1;
	int c = 0;
	while (x > 2)
	{
		c = a + b;
		a = b;
		b = c;
		x--;
	}
	return c;

三.小结

以上就是如何求斐波那契数,采用了递归方式和非递归方式实现,总的来说都是采用函数来实现。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6I-c6I-c5LiN5oGw6I-c,size_20,color_FFFFFF,t_70,g_se,x_16

猜你喜欢

转载自blog.csdn.net/m0_65673419/article/details/123663958
今日推荐