1251: 斐波那契数列

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");
    }
}
上一篇:并发编程


下一篇:为什么wait,notify和notifyAll要与synchronized一起使用?为什么要放在Object类里面