您好,登錄后才能下訂單哦!
這篇文章主要介紹C語言怎么實現Fibonacci數列遞歸,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
/* 問題描述 Fibonacci數列的遞推公式為:Fn=Fn-1+Fn-2,其中F1=F2=1。 當n比較大時,Fn也非常大,現在我們想知道,Fn除以10007的余數是多少。 */ #include<stdio.h> #include<stdlib.h> int N=10007; /*計算Fibonacci函數*/ int Fibonacci (int n) { int Fn; if (n==1 || n==2) { Fn=1; } else { Fn = (Fibonacci(n-1) + Fibonacci(n-2))%N; } return (Fn); } int main(void) { int n,tap=1,F1,F2,Fn; /*判斷是否繼續分析下一個數。*/ while(tap) { /*保證分析的數有效*/ do { printf("*************Fibonacci***************\n"); /*簡易菜單*/ printf("Please enter a positive integer for analysis:\n"); scanf("%d",&n); }while (n<1); /*開始分析*/ Fn=Fibonacci(n); printf("%d\n",Fn); /*判斷是否繼續分析下一個數*/ printf("enter 1 to continue,enter 0 to quit:\n"); scanf("%d",&tap); printf("\n"); } printf("Thank You.\n"); return 0; }
采用遞歸的方法,一次運行多次分析,若想一次運行只分析一次,只需將while循環去掉即可。
以上是“C語言怎么實現Fibonacci數列遞歸”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。