/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院
* All rightsreserved.
* 文件名称:fibnacci.cpp
* 作 者:李巧丽
* 完成日期:2012年11月20日
* 版 本 号: v1.0
* 输入描述:无
* 问题描述:输出Fibnacci序列的第20个数,Fibnacci序列形如0,1,1,2,3,5,8...
* 程序输出:Fibnacci序列中的第20个数
* 问题分析:采用递归的方法……
*/
#include<iostream>
using namespace std;
int fib(int n);
int main()
{
cout<<fib(20)<<endl;
return 0;
}
int fib(int n)
{
int i;
if(n==1)
i=0;
else if(n==2)
i=1;
else
i=fib(n-1)+fib(n-2);
return i;
}
运行结果:
采用迭代的方法:
#include<iostream>
using namespace std;
int fib(int n);
int main()
{
cout<<fib(20)<<endl;
return 0;
}
int fib(int n)
{
int i;
if(n==1)
return 0;
else
if(n==2)
return 1;
else
for(i=3;i<=n;i++)
return (fib(n-2)+fib(n-1));
}
运行结果:
心得体会:是不是实践得太少了,我就没体会到迭代与递归的道道呢!!!!