議誌戰勝①切's profile議誌戰勝①切SpacesPhotosBlogLists Tools Help

Blog


    10/27/2005

    Fibonacci数列

    求Fibonacci数列前40个数。这个数列有如下特点:第1,2两个数为1,1。从第3个数开始,该数是其前面两个数之和。 这是一个有趣的古典数学问题:有一对兔子,从出生后的第3个月起,每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假设所有兔子都不死,问每个月的兔子总数为多少? 可以看到每个月兔子总数依次为:1,1,2,3,5,8,...。这就是Fibonacci数列。程序如下:

    #include <stdio.h>

    void main()
    { long int f1,f2;

       int i;

       f1=f2=1;

       for(i=1;i<=20;i++)

      {

             printf("%12ld%12ld",f1,f2);

             if(i%2==0)

             printf("\n");

             f1=f1+f2;

             f2=f1+f2;

      }

    }

     输出结果为: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245986 102334155