C 語言例項 斐波那契數列

2021-10-23 02:20:28 字數 1669 閱讀 1868

斐波那契數列指的是這樣乙個數列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........

這個數列從第3項開始,每一項都等於前兩項之和。

來歷

斐波那契數列又因數學家列昂納多·斐波那契以兔子繁殖為例子而引入,故又稱為「兔子數列」。

一般而言,兔子在出生兩個月後,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔子都不死,那麼一年以後可以繁殖多少對兔子?

我們不妨拿新出生的一對小兔子分析一下:

第乙個月小兔子沒有繁殖能力,所以還是一對

兩個月後,生下一對小兔對數共有兩對

三個月以後,老兔子又生下一對,因為小兔子還沒有繁殖能力,所以一共是三對

------

依次類推可以列出下表:

經過月數

1

2

3

4

5

6

7

8

9

10

11

12

…幼仔對數

1

0

1

1

2

3

5

8

13

21

34

55

…成兔對數

0

1

1

2

3

5

8

13

21

34

55

89

總體對數

1

1

2

3

5

8

13

21

34

55

89

144

幼仔對數=前月成兔對數

成兔對數=前月成兔對數+前月幼仔對數

總體對數=本月成兔對數+本月幼仔對數

可以看出幼仔對數、成兔對數、總體對數都構成了乙個數列。這個數列有關十分明顯的特點,那是:前面相鄰兩項之和,構成了後一項。

斐波那契數列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

如果設f(n)為該數列的第n項(n∈n*),那麼這句話可以寫成如下形式::f(n)=f(n-1)+f(n-2)

顯然這是乙個線性遞推數列。

流程圖:

C 語言例項 斐波那契數列

c 語言例項 斐波那契數列 斐波那契數列指的是這樣乙個數列 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368 這個數列從第3項開始,每一項都等於前兩項之和。例項 輸出指...

C語言實現斐波那契數列

斐波那契數,通常用 f n 表示,形成的序列稱為斐波那契數列。該數列由 0 和 1 開始,後面的每一項數字都是前面兩項數字的和。也就是 f 0 0,f 1 1 f n f n 1 f n 2 其中 n 1.給定 n,計算 f n 首先來乙個通常版本 int fib1 int n for int i ...

C語言實現列印斐波那契數列

檔名 斐波那契數列.c 功能描述 列印n項斐波那契數列 include intfibonacci int num 計算斐波那契數列第歸函式宣告 程式從主函式開始 intmain int argc,char argv else if num 0 檢查輸入的數是否為正數 else break if 1 ...