利用數組計算斐波那契數列


本題要求編寫程序,利用數組計算菲波那契(Fibonacci)數列的前N項,每行輸出5個,題目保證計算結果在長整型范圍內。Fibonacci數列就是滿足任一項數字是前兩項的和(最開始兩項均定義為1)的數列,例如::1,1,2,3,5,8,13,...。

輸入格式:

輸入在一行中給出一個整數N(1)。

輸出格式:

輸出前N個Fibonacci數,每個數占11位,每行輸出5個。如果最后一行輸出的個數不到5個,也需要換行。

如果輸入的N不在有效范圍內,則輸出"Invalid."。

輸入樣例1:

7

輸出樣例1:

          1          1          2          3          5
          8         13

 

輸入樣例2:

0

 輸出樣例2:

Invalid.

 

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int i, n;
 5     int a[50] = { 1,1 };
 6     scanf("%d", &n);
 7     if (n >= 1 && n <= 46)
 8     {
 9         for (i = 2; i < n; i++)
10             a[i] = a[i - 1] + a[i - 2];//先遍歷一遍46個斐波那契數到數組
11         for (i = 0; i < n; i++)
12         {
13             printf("%11d", a[i]);
14             if ((i + 1) % 5 == 0)//i從0開始  所以加一除以5
15                 printf("\n");
16         }
17     }
18     else
19         printf("Invalid.");
20 
21     return 0;
22 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM