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

2022-09-20 04:39:18 字數 1313 閱讀 2912

經典數學問題之一;斐波那契數列,又稱**分割數列,指的是這樣乙個數列:

1、1、2、3、5、8、13、21、……

前兩個數為1, 1,之後後每個數都為為前面兩個數的相加。

c語言實現:

輸出斐波那契數列前n個數字:

1、普通演算法

#include 

const

int test2(void

);int main(void

)

return0;

}const

int test2(void

)

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

printf("\n

");return1;

}

2、遞迴實現

#include const

int test3(const

int);

const

int test5(void

);int main(void

)

return0;

}/*使用遞迴方式

*/const

int test3(const

intindex)

const

int test5(void

)

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

printf("\n

");return1;

}

執行結果:

用遞迴的方法實現此數列簡潔,方便理解。但是我們仔細觀察上面的**,就會發現此函式中存在著大量的冗餘計算,並且n越大,冗餘的越多。

輸出比數列中小於等於max的數字

#include const

int test6(void

);int main(void

)

return0;

}const

int test6(void

)

while(t1 <=max)

printf("\n

");return1;

}

執行結果:

新人才疏學淺,有錯的地方敬請指正!!

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 ...

C語言 實現斐波那契( Fibonacci )數列

斐波那契數列是由數列前兩項之和決定第三項,並以此類推,逐步迭代的二階遞推數列。解決方案一 迴圈 輸入位數n,輸出前n項的數列 include intmain return0 對迴圈體演算法的理解 開始的條件為f1 f2 b三個引數,其中f1 f2有值儲存,b為空 故判斷出結束迴圈體時也應為此形式,且...