标签:编程 计算机 微软 visual stduio vs2013 c语言 c++ c
斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1960年代起出版了《斐波纳契数列》季刊,专门刊载这方面的研究成果。
#include<stdio.h>
/*
解决斐波那契数列问题:
斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...
特别指出:0是第0项,不是第1项。
这个数列从第二项开始,每一项都等于前两项之和。fn=fn(n-1)+fn(n-2);
*/
void array();
int recursion(int n);
void main()
{
printf("----------用数组输出数列前40项的值-----------------\n");
array();
printf("----------用递归输出数列第6项的值-----------------\n");
printf("%d\n",recursion(6));
system("pause");
}
//用的递归实现
int recursion(int n)
{
if (n == 1 || n == 2)
{
return 1;
}
else
{
return recursion(n - 1) + recursion(n - 2);
}
}
//用数组模拟前四十项的值
void array()
{
int a[40];
a[0] = 1;//下表为1,代表数列的第一项
a[1] = 1;
printf("%d\n",a[0]);
printf("%d\n", a[1]);
for (int i = 2; i <40; i++)
{
a[i] = a[i - 1] + a[i - 2];
printf("%d\n", a[i]);
}
}
接上:
同
标签:编程 计算机 微软 visual stduio vs2013 c语言 c++ c
原文地址:http://blog.csdn.net/mini0520/article/details/26264755