各位看官們,大家好,從今天開始,我們講大型章回體科技小說 :C栗子,也就是C語言實(shí)例。閑話休提, 言歸正轉(zhuǎn)。讓我們一起talk C語言實(shí)例吧!
看官們,上一回中咱們說的是求階乘的例子,這一回咱們說的例子是:斐波那契數(shù)列。
看官們,斐波那契數(shù)列是以數(shù)學(xué)家斐波那契數(shù)列的姓來命名的。斐波那契數(shù)列的定義:數(shù)列的第0項(xiàng)和第1項(xiàng) 為1,第n項(xiàng)為第n-1項(xiàng)和第n-2項(xiàng)的和。用數(shù)學(xué)公式表示出來就是:f(n)=f(n-1)+f(n-2),其中(n>1), f(n)=1;(n=0,1).看官們,我在程序中使用了遞歸方法來實(shí)現(xiàn)斐波那契數(shù)列,這點(diǎn)和求階乘一樣。不過 沒有像求階乘一樣使用循環(huán)方法去實(shí)現(xiàn)斐波那契數(shù)列。詳細(xì)的代碼如下:請大家參考:
1 /* **************************
2 * For Fibonacci
3 * *************************/
4 #include<stdio.h>
5
6 #define SUCCESS 1
7 #define FAILED 0
8 #define BAD_PARAMETERS -1
9
10 //使用遞歸方法來求階乘
11 int Fibonacci(int n)
12 {
13 if(n < 0)
14 return BAD_PARAMETERS;
15
16 if(n == 0 || n==1)
17 return 1;
18 else
19 return (Fibonacci(n-1)+Fibonacci(n-2));
20 }
21
22
23 int main()
24 {
25 int result = 0;
26
27 result = Fibonacci(7);
28 if(result > 0)
29 printf("%d \n",result);
30
31 return 0;
32 }
補(bǔ)充一點(diǎn):斐波那契數(shù)列和求階乘背后的算法思想是一樣的。它們都使用了遞歸的思想。
各位看官,關(guān)于斐波那契數(shù)列的例子咱們就說到這里。欲知后面還有什么例子,且聽下回分解。