编辑代码

#include<iostream>
using namespace std;
//递归
int f1(int n)  
{
	if(n<0)
	return 0; 
	 
	if(n==1)
	return 1;
	
	if(n==2)
	return 2;
	
	return f1(n-1)+f1(n-2);
}
 //递推
int f2(int n) 
{
	int a[50];
	a[1]=1;
	a[2]=2;
	for(int i=2;i<=n;i++)
	a[i]=a[i-1]+a[i-2];
	return a[n]; 
 } 
int main()
{
	int n=6;
	cout<<"递归:"<<f1(n)<<endl;
	cout<<"递推:"<<f2(n)<<endl;
	return 0;
}