1251: 斐波那契数列
1.描述
斐波那契数列为:1,1,2,3,5,8,13…,常规递推公式f(n)=f(n-1)+f(n-2);
输入
输入一个整数n(0<=n<=200),为多组数据。
输出
输出第n个斐波那契数
样例输入
1
2
4
样例输出
1
2
5
提示
第0项为1
2.代码
#include<stdio.h>
#include<math.h>
int main()
{
int a[201][10]={0},t=0,p=pow(10,6),i,j,n,f;
a[0][0]=1,a[1][0]=1;
for(i=2;i<201;i++)
{
t=0;
for(j=0;j<10;j++)
{
a[i][j]=a[i-1][j]+a[i-2][j]+t;///将结果每六位分为一部分
t=a[i][j]/p;
a[i][j]=a[i][j]%p;
}
}
while(scanf("%d",&n)!=EOF)
{
f=0;
for(i=9;i>=0;i--)
{
if(a[n][i]!=0&&f==0)
printf("%d",a[n][i]),f=1;
else if(f!=0)
printf("%06d ",a[n][i]); ///不足六位左面补零。
}
printf("\n");
}
}