代碼:
#include<stdio.h>
int Fib(int n){//自定義函數
if(n<0)
return-1;
else if(n==0)
return 0;
else if(n==1)
return 1;
else
return Fib(n-1)+Fib(n-2);
}
int main(){
int num;
printf("請輸入要求取的第n項斐波那契數列n=");
if(scanf("%d",&num)){
if(num>=0){
printf("%d",Fib(num));
}
else
printf("Error!!!");
return 0;
}
return 0;
}
擴展資料:
斐波那契數列排列組合
有壹段樓梯有10級臺階,規定每壹步只能跨壹級或兩級,要登上第10級臺階有幾種不同的走法
這就是壹個斐波那契數列:登上第壹級臺階有壹種登法;登上兩級臺階,有兩種登法;登上三級臺階,有三種登法;登上四級臺階,有五種登法……
1,2,3,5,8,13……所以,登上十級,有89種走法。
類似的,壹枚均勻的硬幣擲10次,問不連續出現正面的可能情形有多少種?
答案是(1/√5)*{[(1+√5)/2]^(10+2)-[(1-√5)/2]^(10+2)}=144種。
求遞推數列a⑴=1,a(n+1)=1+1/a(n)的通項公式
由數學歸納法可以得到:a(n)=F(n+1)/F(n),將斐波那契數列的通項式代入,化簡就得結果。
參考資料:
百度百科——斐波那契數列