题目描述:

本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m≤n≤10000)之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列。

函数接口定义:

int fib( int n );
void PrintFN( int m, int n );

其中函数fib须返回第n项Fibonacci数;函数PrintFN要在一行中输出给定范围[mn]内的所有Fibonacci数,相邻数字间有一个空格,行末不得有多余空格。如果给定区间内没有Fibonacci数,则输出一行“No Fibonacci number”。

裁判测试程序样例:

#include <stdio.h>
int fib( int n );
void PrintFN( int m, int n );
int main()
{ int m, n, t; scanf("%d %d %d", &m, &n, &t); printf("fib(%d) = %d\n", t, fib(t)); PrintFN(m, n); return 0;
} /* 你的代码将被嵌在这里 */

输入样例1:

20 100 7

输出样例1:

fib(7) = 13
21 34 55 89

输入样例2:

2000 2500 8

输出样例2:

fib(8) = 21
No Fibonacci number

解题思路:

求斐波那契数:1 1 2 3 5 8 13 21 34 55 89 144 ...

规律:fib(1)=1   fib(2)=1   fib(3)=fib(1)+fib(2)   fib(4)=fib(3)+fib(2)

fib(n)=fib(n-1)+fib(n-2)

代码如下:

int fib(int n)
{if(n==1 || n==2) return 1;else return fib(n-1)+fib(n-2);
}
void PrintFN(int m,int n)
{int i=1,flag=0,t=0;//flag判断是否有斐波那契数在m和n之间   t是用来处理最后一个没有空格的要求while(fib(i)<m)i++;while(fib(i)<=n){t++;if(t==1) printf("%d",fib(i));else printf(" %d",fib(i));flag=1;i++;}if(flag==0) printf("No Fibonacci number\n");
}

使用函数输出指定范围内的斐波那契数相关推荐

  1. 输出指定位数的最小斐波纳契数

    斐波那契数,亦称之为斐波那契数列,指的是这样一个数列:1.1.2.3.5.8.13.21.--,这个数列从第3项开始,每一项都等于前两项之和.求指定位数的最小斐波那契数. 输入格式: 输人一个整数n( ...

  2. java 判断fibonacci_Java程序检查给定的数字是否是斐波纳契数

    以下是检查给定数字是否为斐波那契的Java程序- 示例public class Demo{ static boolean perfect_square_check(int val){ int s =  ...

  3. 斐波那契数(Java)

    斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列.该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和.也就是: F(0) = 0,   F(1) = 1 F(n) = F( ...

  4. java求第k个斐波那契数_Java程序查找第n个斐波那契数

    可以通过多种方式找到第n个斐波那契数.在这里,我们将使用动态编程技术以及优化空间. 让我们看一个例子- 示例public class Demo{ static int fibo(int num){ i ...

  5. 算法笔记_001:斐波那契数的多种解法(Java)

    本篇文章解决的问题来源于算法设计与分析课程的课堂作业,主要是运用多种方法来计算斐波那契数.具体问题及解法如下: 一.问题1: 问题描述:利用迭代算法寻找不超过编程环境能够支持的最大整数的斐波那契数是第 ...

  6. C语言题目:斐波那契数

    斐波那契数列是什么?就是第一个数+第二个数=第三个数 例如:1+1=2 1+2=3 1 2 3 4 5 6 7 8 9 10 1 1 2 3 5 8 13 21 34 55 所以该去怎么设计呢,正好这 ...

  7. JavaScript实现闭式函数计算特定位置的斐波那契数fibonacciNthClosedForm算法(附完整源码)

    JavaScript实现闭式函数计算特定位置的斐波那契数fibonacciNthClosedForm算法(附完整源码) fibonacciNthClosedForm.js完整源代码 fibonacci ...

  8. c语言编程斐波那契前n项,c语言:写一个函数,输入n,求斐波拉契数列的第n项(5种方法,层层优化)...

    写一个函数,输入n,求斐波拉契数列的第n项. 斐波拉契数列:1,1,2,3,5,8...,当n大于等于3时,后一项为前面两项之和. 解:方法1:从斐波拉契数列的函数定义角度编程 #include in ...

  9. 输出第N个斐波那契数

    斐波那契数 什么是斐波那契数? 斐波那契数列(Fibonacci sequence),又称黄金分割数列.斐波那契数列的排列是:1,1,2,3,5,8,13,21,34,55,89,144- 依次类推下 ...

最新文章

  1. Nginx源码分析--数据对齐posix_memalign和memalign函数
  2. C#_关于静态类和静态方法(转)
  3. 黄皓之后,计算机科学上帝Don Knuth仅用一页纸证明布尔函数敏感度猜想
  4. LoadRunner中进程运行和线程运行区别
  5. 【操作系统】虚拟化CPU、Memory,共享文件
  6. php redis与me m,Redis(十) —— 为php增加redis扩展
  7. mysql索引平衡树hash_MySQL B+树索引和哈希索引的区别
  8. Centos 7 Mysql 配置文件位置
  9. Premiere Pro之经典类转场
  10. ElasticSearch教程——倒排索引及其数据结构以及优缺点
  11. c语言中大于号什么意思和作用,程序员必须要使用的大于号,小于号你知道几个?教你轻松入门C语言...
  12. 2015~2020年中国房价走势
  13. 入门vue+springboot项目
  14. Object.entries() 的使用
  15. 移动端实时音视频直播技术中推流和传输详解
  16. 杰理之 MIC录音 vbat电压低于3.2v会有很强的底噪?【篇】
  17. 防火墙基础配置(二)
  18. mysql里面使用技巧_MySQL的使用技巧
  19. 清除计算机病毒更换内存芯片,电脑内存条中病毒了怎么处理?
  20. FMEA方法,排除架构可用性隐患的利器

热门文章

  1. Nat Genet | 湖南农业大学群体基因组学研究揭示古老芥菜身世之谜、百变之源
  2. 1690: [Usaco2007 Dec]奶牛的旅行
  3. 关于数据导出到Excel或wps时避免自动转成科学计数法的处理
  4. rca接口使用方法_使用标准的音频视频RCA电缆将视频从Apple iPod中取出
  5. VBA批量复制Excel表并更新表中的公式
  6. Java对象的深度克隆
  7. 02.GLM-130B
  8. upsource容器部署
  9. 算术基本定理+容斥-17级暑假集训
  10. windows mysql 数据库存放位置_windows环境下更改Mysql数据库存储位置的具体步骤