经典递归--C/C++斐波那契数列

                              *今天给大家带来最经典的递归——斐波那契数列* 

请添加图片描述

一.什么是斐波那契数列?

斐波那契数列,又称黄金分割数列,最早是以兔子繁殖为例子…(数学源于生活嘛.哈哈),所以又称为“兔子数列”,例如:0,1, 1,2, 3,5, 8,13, 21… …
如图:
在这里插入图片描述

——————————————————————————————————————————————————

二.什么是递归(简述)?

C/C++允许函数自己调用它自己,这个调用过程称为递归。

——————————————————————————————————————————————————

三.程序分析

分析与图解

既然从上述得知什么是斐波那契数列后,那我们第一步就是分析;
1.若F(n)=0,则为0;
2.若F(n)中1<=n<=2,则都为1;
3.如果当n>2的时候很容易找到规律:若n=5,则F(n)=F(n-1)+F(n-2)
即:F(5)=F(4)+F(3):也就是从第三项开始,每一项等于它前两项之和

如图:
在这里插入图片描述
在数学上,斐波那契数列以如下被以递推的方法定义:
F (0)=0, F (1)=1, F (n)= F (n - 1)+ F (n - 2)( n ≥ 2, n ∈ N*)
——————————————————————————————————————————————————

代码C/C++

斐波那契.c

#include<stdio.h>
int cout = 0; 
int Feibo(int n)
{
	if (n == 0)
		return 0 ;
	if (n == 1 || n == 2)
		return 1;
	else
		return Feibo(n - 1) + Feibo(n - 2);
}
int main()
{
	int n = 0;
	scanf("%d",&n);
	int ret = Feibo(n);
	printf("%d\n", ret);
	return 0;
}

——————————————————————————————————————————————————

斐波那契.cpp


#include<iostream>
using namespace std;
int Feibo(int n)
{
    if (n == 0)
		return 0 ;
	if (n == 1 || n == 2)
		return 1;
	else
		return Feibo(n - 1) + Feibo(n - 2);
}
int main()
{
    int n = 0;
    cin >> n;
    int ret = Feibo(n);
    cout << ret << endl;
    return 0;
}

请添加图片描述

  • 15
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

#唐解元

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值