我是靠谱客的博主 受伤老鼠,最近开发中收集的这篇文章主要介绍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("%dn",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数列递归的全部内容,希望文章能够帮你解决C语言实现Fibonacci数列递归所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(107)

评论列表共有 0 条评论

立即
投稿
返回
顶部