问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:test.cpp
*作 者:陈文青
*完成日期:2014年11月16日
*版 本 号:v1.0
*
*问题描述:编制递归函数fib(int n)返回第n个Fibnacci数,以此输出Fibnacci序列的第20个数。
*程序输入:
*程序输出:Fibnacci序列的第20个数。
*/
#include <iostream>
using namespace std;
int fib(int n);
int main()
{
cout<<fib(20)<<endl;
return 0;
}
//返回Fibnacci序列中的第n个数
int fib(int n)
{
if(n==1)
return 0;
else if(n==2)
return 1;
else
return(fib(n-1)+fib(n-2));
}
运行结果:
知识点总结:
斐波那契数列列由 0 和 1 开始,之后的斐波那契数列系数就由之前的两数相加。
学习心得:
利用递归函数解决数学问题,提前画出流程图更好解决