求斐波那契数列的第n个数;1,1,2,3,5,8,13,21.....

原创 2016年11月12日 20:07:14

递归方法:

#include<stdio.h>
#include<stdlib.h>

int Fibonacci_sequence(int n)
{
	if (n == 1 || n == 2) // 递归结束的条件,求前两项
		return 1;
	else
	{
		return Fibonacci_sequence(n - 1) + Fibonacci_sequence(n - 2); // 如果是求其它项,先要求出它前面两项,然后做和。
	}
}

int main()
{
	int i = 0;
	int n = 8;
	printf("Please enter a number:");
	scanf("%d", &n);
	i=Fibonacci_sequence(n);
	printf("The number is %d\n", i);
	system("pause");
	return 0;
}

#include<stdio.h>
#include<stdlib.h>

 void Fei(int n) // 非递归
 {
	
	int sum = 1;
	int sum1 = 1;
	int i = 0;
	int tem = 0;
	if (n < 1)
	{
		printf("输入数字有误\n");
	}
	else if (1 == n)
	{
		printf("第n个斐波那契数是:%d\n", sum);
	}
	else if(2 == n)
	{
		printf("第n个斐波那契数是:%d\n", sum);
	}
	else
	{
		for (i = 0; i < n - 2; i++) //  第三项等于前两相加
		{
			tem = sum;   //  tem 保存原来的sum
			sum += sum1; //  sum= 前两项相加
			sum1 = tem;  //  sum1 =原来的sum    始终保证第三项等于前两项相加
		}
		printf("第n个斐波那契数是:%d\n", sum);
	}
	
}
int main()
{
	int n = 0;
	printf("Please enter a number :");
	scanf("%d",&n);
	Fei(n);
	system("pause");
	return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

C++算法之 斐波那契数列

题目:写一个函数,输入n,求斐波那契数列的第n项。   方法1:递归: int fib2(int n) { if(n == 0) return 0; if(n == 1) ...
  • djb100316878
  • djb100316878
  • 2015年01月21日 10:52
  • 11369

用递归法计算斐波那契数列的第n项

斐波纳契数列(Fibonacci Sequence)又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,F...
  • 21aspnet
  • 21aspnet
  • 2012年03月12日 14:56
  • 22724

递归法求斐波那契数列(C语言版)

斐波那契数列:                  又称黄金分割数列,指的是这样一个数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...      ...
  • u012561696
  • u012561696
  • 2014年02月14日 11:25
  • 7117

【c语言】求斐波那契数列的前40个数。特点,第1,2个数为1,从第三个数开始,该数是前面两个数之和

// 求斐波那契数列的前40个数。特点,第1,2个数为1,从第三个数开始,该数是前面两个数之和 #include int main() { int a = 1; int b = 1; in...
  • zhaoyaqian552
  • zhaoyaqian552
  • 2015年04月24日 15:33
  • 3519

java 输入一个整数n,根据n获取Fibonacci数列的第n个值

数学基础: 1,1,2,3,5,8,13 and so on 前两位特殊,其余各位符合F(n) = F(n-1)+F(n-2);  首先想到递归,如下: public static i...
  • moyinghui
  • moyinghui
  • 2016年12月12日 19:22
  • 1534

求Fibonacci数列前40个数

求Fibonacci数列前40个数。这个数列有以下特点:第1,2两个数为1,1。从第3个数开始,该数是其前面两个数之和。即 F1=1                 (n=1) F2=2       ...
  • Gary_888
  • Gary_888
  • 2016年05月14日 11:07
  • 4221

[南阳OJ-No.13]Fibonacci数|无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地定义为 F(n)=1 ...........(n=1或

南阳OJ-No.13 时间限制:3000ms,空间限制:65535KB 描述 无穷数列1,1,2,3,5,8,13,21,34,55…称为Fibonacci数列,它可以递归地定义为 F(n...
  • dj741
  • dj741
  • 2017年02月03日 14:43
  • 1398

Python:斐波那契数列递归实现方法

def factorial(n): if n1: return -1 if n==1 or n==2: return 1 else: ...
  • DeniuHe
  • DeniuHe
  • 2017年08月11日 17:03
  • 412

一个斐波那契数列的前10项为:1, 2, 3, 5, 8, 13, 21, 34, 55, 89,对于一个最大项的值不超过n的斐波那契数列,求值为偶数的项的和。

题目内容: 一个斐波那契数列的前10项为:1, 2, 3, 5, 8, 13, 21, 34, 55, 89,对于一个最大项的值不超过n的斐波那契数列,求值为偶数的项的和。 输入格式: ...
  • weishuirun1122
  • weishuirun1122
  • 2017年10月11日 21:09
  • 165

java入门级训练:斐波那契(Fobonacci):1,1,2,3,5,8,13,.... 功能:随机输出第n位数。

/******************************************** 斐波那契(Fobonacci):1,1,2,3,5,8,13,.... 功能:随机输出第n位数。 分析...
  • zxy1719097450
  • zxy1719097450
  • 2016年12月14日 12:50
  • 285
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:求斐波那契数列的第n个数;1,1,2,3,5,8,13,21.....
举报原因:
原因补充:

(最多只允许输入30个字)