C语言:通过递归算法实现斐波那契数列

C语言:通过递归算法实现斐波那契数列,第1张

斐波那契数列,又称黄金分割数列,指的是这样一个数列: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≥2,n∈N*)。

/*
	计算斐波那契数
	递归和非递归分别实现求第n个斐波那契数
 */
int Fib(int i)
{
	if (i == 1)
		return 0;		//第一个数返回 0 
	else if (i == 2)
		return 1;		//第二个数返回 1 
	else
		return Fib(i - 1) + Fib(i - 2); //利用递归来求第三个数之后的数
}

int main()
{
	int n = 0, i = 0;
	int num = 0;
	int Fib(i);   // -声明函数Fib (此函数就是求斐波那契数的函数)

	printf("请输入您想输出多长的斐波那契数列=>");
	scanf("%d", &n);
	printf("\n");

	for (i = 1; i <= n; i++) 
	{
		num = Fib(i);   //通过一个递归函数获取第n个斐波那契数 
		printf("第%d个斐波那契数是%d\n", i, num);
	}

F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)这个是属于数学公式:可以直接进行套用! 

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/868187.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-13
下一篇2022-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存