这篇文章主要介绍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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。