求斐波那契数列的第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;
}


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

相关文章推荐

[南阳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
  • 942

NYOJ——13 Fibonacci数

Fibonacci数 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibona...

求斐波那契数列的第N个数的值

难易程度 简单题目描述:Find the Nth number in Fibonacci sequence.(译:如题)A Fibonacci sequence is defined as follo...

斐波那契数列

题目描述 小牛:“话说,斐波那契数列1, 1, 2, 3, 5, 8, 13...是一个神奇的数列,它的……” !@#¥%……&*(小牛被众人群殴——“就这玩意,谁不懂啊?”) 小牛:“咳咳,这...

【洛谷1962】 斐波那契数列

题面题目背景大家都知道,斐波那契数列是满足如下性质的一个数列:• f(1) = 1• f(2) = 1• f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 为整数)题目描述请你求出 ...

Java之 求Fibonacci数列:1,2,3,5,8,13.。。。。前十位数的和

public class 第三章34 { public static void main(String [] args){ int a=1,b=2,c=0; for (int x=0;x c=...

使用递归算法求1,1,2,3,5...斐波那契数列第N个数的值

这道题非常简单,只需要使用一个简单的递归即可得到结果: 规律为从第三个数开始: F(n) = F(n-1) + F(n-2) C#代码: public int Foo(int ...

对于web开发前后端分离的思考

Android,iOS的移动应用app本来就是前后端彻底分离的,但是web app有必要前端端分离吗?前后端分离的意义是什么?有什么弊端?知乎上也有对这个问题的讨论https://www.zhihu....

JQuery常见的语法以及简单例子总结

一.方法 1.搜索与参数表示的对象匹配的元素,并返回相应元素的索引值值 $('#act li').index(); 如果找到了匹配的元素,从0开始(0,1,2..)返回;如果没有找到匹配的元素,返回-...

求Fibonacci数列:1,1,2,3,5,8,...第10个数的值

下面用两种方法实现: 第一种:使用递归调用实现 public class Fab{ public static void main(String[] args){ System.ou...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:求斐波那契数列的第n个数;1,1,2,3,5,8,13,21.....
举报原因:
原因补充:

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