Jimmy小站

小明也有大梦想 — 蒋明/铭
当前位置:网站首页 / C语言基础题 / 正文

6-8 编程题,输出m ~n 之间所有的Fibonacci 数

2015-08-30 / C语言基础题 / 4089 次围观 / 0 次吐槽

【问题描述】

输入2个正整数m和n(m≥1,n≤10 000),输出m ~n 之间所有的Fibonacci数。Fibonacci数列(第一项起):1,1,2,3,5,8,13,21,…。要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci 数。例如,fib(7)的返回值是13。

【输入形式】

从键盘输入2个整数m和n。

【输出形式】

输出m ~n之间所有的Fibonacci 数。

【样例输入1】(下划线部分为键盘输入,其余部分为程序输出)

Input m: 20

Input n: 100

【样例输出1】

21 34 55 89

【样例输入2】(下划线部分为键盘输入,其余部分为程序输出)

Input m: 50

Input n: 300

【样例输出2】                                                                          

55 89 144 233

【样例说明】

输入提示符后要加一个空格。例如“Input integers: ”,其中“:”后要加一个且只能一个空格。

输出数据之间有且仅有一个空格。

英文字母区分大小写。必须严格按样例输入输出。


#include<stdio.h>
int fib(int n)
{
    int a=1,b=1,c,i,sum=0;
    for(i=1;i<=n;i++){
        sum=a+b;
        c=a+b;
        a=b;
        b=c;
    }
    if(n==1||n==2){
        sum=1;
    }
    return sum;
}

int main(void)
{
    int m,n,i=1,j;
    printf("Input m: ");
    scanf("%d",&m);
    printf("Input n: ");
    scanf("%d",&n);
    do{
        j=fib(i);
        if(j>=m && j<=n){
            printf("%d ",j);
        }
        i++;
    }
    while(j<=n);
    return 0;
}


推荐您阅读更多有关于“”的文章

[一个Java程序猿的转型之路,读研深造,专注机器学习推荐算法]
本站所有文章如无特别注明均为原创。作者:吉米酱 ,复制或转载请以超链接形式注明转自 Jimmy小站
原文地址《6-8 编程题,输出m ~n 之间所有的Fibonacci 数
额 本文暂时没人评论 来添加一个吧

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright © Jimmy小站 Allrights Reserved.备案号:桂ICP备 15005996