注意:40项斐波那契数列,数字将会非常大,int类型变量已无法存储!代码中使用到了64位无符号整型数unsigned __int64,以便满足题目要求且可继续扩展(比如输出50项)。 #include

费波纳切数列,更通用的音译是斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、……数学上的定义是F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)用一个数组把每项的值保存下来,然后依次计算。
于是求斐波那契数列第n项的函数也可以写作:以上是求斐波那契数列的三种常见的方式。值得注意的一点是,实际使用中要注意使用类型的范围,不要溢出。
比如在这几个程序中使用的是最简单的int类型,最大可以计算到F(46), 而F(47)已经超过了int所能表达的范围,会发生溢出。
如果需要更大的值,那么就要改成使用更多字节的类型。比如long long等。