输入一个正整数repeat (0<repeat<10),做repeat次下列运算:

输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。
Fibonacci 序列(第1项起):1 1 2 3 5 8 13 21 ......
要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。例如,fib(7)的返回值是13。
输出语句:printf("%ld ", f);

例:括号内是说明
输入:
3 (repeat=3)
1 10 (m=1, n=10)
20 100 (m=20, n=100)
1000 6000 (m=1000, n=6000)
输出:
1 1 2 3 5 8 (1到10之间的Fibonacci数)
21 34 55 89 (20到100之间的Fibonacci数)
1597 2584 4181 (1000到6000之间的Fibonacci数)

#include "stdio.h"
#include "math.h"
int main( )
{
int ri,repeat;
int i, m, n;
long f;
long fib(int n);

scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++){
scanf("%d%d", &m, &n);
/*---------*/
printf("\n");
}
}

/*---------*/

第1个回答  2013-07-12
//还有问题,请加646203846
#include "stdio.h"
#include "math.h"
int main( )
{
int ri,repeat;
int i, m, n;
long f;
long fib(int n);

scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++){
scanf("%d%d", &m, &n);
for(i=1;;i++)
{
f=fib(i);
if(f>=m&&f<=n) printf("%ld ",f);
if(f>n) break;
}
printf("\n");
}
}
long fib(int n)
{
int i,a,b,c;
if(n==1) return 1;
if(n==2) return 1;
a=1;b=1;
for(i=3;i<=n;i++)
{
c=a+b;
a=b;
b=c;
}
return c;
}本回答被网友采纳

...输入一个正整数repeat (0<repeat<10),做repeat次下列运算...
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入一行字符串,生成一个新的字符串,将原字符串中的大写字母用下面列出的对应大写字母替换, 其余字符不变, 输出新字符串.原字母 对应字母 A ──→ Z B ──→ Y C ──→ X D ──→ W ……X ──→ C ...

...正整数repeat(0<repeat<10),做repeat次下列运算:皮球从height(米...
printf("请问球是第几次落地?");scanf("%d",×);printf("第 %d 次落地时走过的路程约为 %g 米。\\n",times,height+height*2*(1-pow(0.5,times-1)));printf("第 %d 次落地后弹起的高度为 %g 米。\\n",times,height*pow(0.5,times) );return 0;} 以前写过 ...

...正整数repeat(0<repeat<10),做repeat次下列运算: 读入一个正整数n...
include <stdio.h>void sign(int x){ if (x > 0){ printf("sign(%d)=1\\n", x);} else if(x < 0){ printf("sign(%d)=-1\\n", x);} else { printf("sign(%d)=0\\n", x);} void main(){ int num = 0, x;int i;scanf("%d", &num);for (i = 0; i < num; ...

...正整数repeat(0<repeat<10),做repeat次下列运算: 读入一个正整数n...
你做p=p*i 结果是p,最后输出了一个n..printf("p=%d\\n",n);→ printf("p=%d\\n",p);

...repeat (0<repeat<10),做 repeat 次下列运算:
1、确定程序结构 程序需要两层循环嵌套,读取repeat后进入第一层循环,第一次循环用于确定读取的字符串数,第二层循环用于读取字符和修正数据。程序框图如下图所示:2、确认程序使用变量及类型 根据程序需求可以确定所需变量及类型(如下图所示),此处应注意通过循环读取字符并同步统计,故仅需要使用一个...

...0<repeat<10),做repeat次下列运算: 输入一个整数n (n>=0)和一...
int main(void){ int repeat, ri;int n;double x, result;scanf("%d", &repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%d%lf", &n, &x);result = p(n, x);printf("p(%d, %.2lf)=%.2lf\\n", n, x, result);} } double p(int n, double x){ if(n==0)...

...0<repeat<10),做repeat次下列运算: 输入参数a,b,c,求一元二次方程...
int repeat, ri;double a, b, c, d;scanf("%d", &repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%lf%lf%lf", &a, &b, &c);d=b*b-4*a*c;if (a==0&&b==0&&c==0) printf("参数都为零,方程无意义!\\n");else if (a==0&&b==0&&(c!=0)) print...

...repeat (0<repeat<10),做 repeat 次下列运算: 输入两个正整数 m...
int main(void){ int factor, m, n, number, sum;int repeat, ri;int i;scanf("%d",&repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%d%d", &m, &n);printf("result:\\n");for(number=m;number<=n;number++){ sum=1;for(i=2;i<number;i++)if(number%i==0) sum...

输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:
第一, num[k+1]=0; 应该改成 num[k]=0;第二,if('0'<=num[k]&&num[k]<='9') number=number+(num[k]-'0')*16;else number =number+(num[k]-'A'+10)*16;应该改成 if('0'<=num[k]&&num[k]<='9')number=number*16 + (num[k]-'0');else number=number*16 + ...

...repeat (0<repeat<10),做 repeat 次下列运算: 输入一个正整数 n...
include <stdio.h> void main(){int a,b,n;scanf("%d",n);for(a=1;a<n;a++){ for(b=1;b<=a;b++);{printf("%d*%d=%d\\t",b,a,b*a);} printf("\\n");} } 不知道这个程序合不合要求,希望对你有帮助吧

相似回答