编码实现斐波那契数列

斐波那契数列(Fibonacci sequence)

又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”
指的是这样一个数列:
0、1、1、2、3、5、8、13、21、34、……

在数学上,斐波那契数列以如下被以递推的方法定义:
F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)

图片解释更为直观:

在这里插入图片描述
源代码_1(数组实现):

#include <stdio.h>
int main()
{
    
    
	int n = 0;
	printf("斐波那契数个数:\n");
	scanf_s("%d", &n);
	int i,f[200] = {
    
     1, 1 };
	for (i = 2; i <n; i++)
		f[i] = f[i - 2] + f[i - 1];
	for (i = 0; i <n; i++)
	{
    
    
		if (i % 5 == 0)
			printf("\n");
			printf("%12d", f[i]);
	}
	return 0;
}

源代码_2(迭代实现):

#include <stdio.h>
int main()
{
    
    
	int n = 0;
	printf("斐波那契数数个数:\n");
	scanf_s("%d", &n);
	int f1 = 1, f2 = 1, f3;
	printf("%d\n%d\n", f1, f2);
	int i;
	for (i = 3; i <= n; i++)
	{
    
    
		f3 = f1 + f2;
		printf("%d\n", f3);
		f1=f2;
		f2=f3;
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45313447/article/details/110007621