C++大学基础教程_6_20递归应用示例Fibonacci数列

//Fibonacci数列:0、1、1、2、3、5、8、13、、、、、
//从0、1开始,后面的每个Fibonacci数是其前面两个Fibonacci数之和

#include <iostream>
using namespace std;

int Fibonacci(int);//递归程序

int main()
{
	for(int i=0;i<=10;i++)
		cout << "Fibonacci(" << i << ") = " << Fibonacci(i) << endl;
	cout << "Fibonacci(20) = " << Fibonacci(20) << endl;
	cout << "Fibonacci(25) = " << Fibonacci(25) << endl;
	cout << "Fibonacci(30) = " << Fibonacci(30) << endl;
	cout << "Fibonacci(35) = " << Fibonacci(35) << endl;
	//为毛计算Fibonacci(40)就出现错误了额,难道是数据太大???、
	system("pause >> cout");
	return 0;
}

int Fibonacci(int number)
{
	if((number == 0)||(number == 1))
		return number;
	else
		return Fibonacci(number-1) + Fibonacci(number-2) ;
}

 程序运行结果



 

猜你喜欢

转载自jia-shun.iteye.com/blog/2067114