public static void main(String args[]){
int ri,repeat;
int i, m, n;
long f;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1; ri<=repeat; ri++){
m=in.nextInt();
n=in.nextInt();
/*---------*/
f=1;
while(f>=m&&f<=n){
f=fib(m);
m++;
System.out.print(f+" ");}
System.out.println();
}
}
/*------------*/
static int fib(int n){
if(n==1) return 1;
if(n==2) return 1;
else return fib(n-2)+fib(n-1);
}
各位高手帮我看一看哪里错了,在线等,急急急
修改一下main就行了
public static void main(String args[])
{
int ri,repeat;
int i, m, n;
long f;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1; ri<=repeat; ri++)
{
m=in.nextInt();
n=in.nextInt();
for(i=1;;i++)
{
if(fib(i)>=m && fib(i)<=n)//值在m,n之前就输出
{
System.out.print(fib(i)+" ");
}
if(fib(i)>n)//超过输出, 中止循环
break;
}
System.out.println("\n");
}
}
结果:
那怎么控制i 的范围呢?具体在程序里怎么写呢?谢谢~~
追答我已经给你代码了呀,你仔细看我的回答,刚才代码格式有问题,我换成普通文本了
追问while(true)是怎么回事?前面没有控制true的布尔函数啊?
...个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。_百...
public static void main(String args[]) { int ri,repeat; int i, m, n; long f; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++) { m=in.nextInt(); n=in.nextInt(); for(i=1;;i++) { if...
输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数...
import java.util.Scanner;public class Test { public static void main(String args[]) { int ri, repeat;int i, m, n;long f;Scanner in = new Scanner(System.in);repeat = in.nextInt();for (ri = 1; ri <= repeat; ri++) { m = in.nextInt();n = in.nextInt();for ...
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
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(...
C语言:输入两个正整数m和n(m=1,n=10000),输出m~n之间的所有Fibonacci数...
实现程序,输入两个正整数m和n(m=1,n=10000),通过调用fib函数计算m~n之间的所有Fibonacci数,输出结果。具体步骤如下:读入两个正整数m和n。使用for循环,从i=m开始迭代,当i小于等于n时循环继续执行。在循环内部,调用fib函数计算当前i对应的Fibonacci数,输出结果。循环结束后,程序结束。
C语言:输入两个正整数m和n(m>=1,n<=10000),输出m~n之间的所有Fibonacci...
简单的说,楼主伸手党……int fib(int temp);void My_work(int m, int n);{ for(int i=0; i<10000; i++){ if(fib(i)<m)i++;else if(fib(i)>=m && fib(i)<=n){ i++;cout<<fib(i)<<endl;} else break;} } 仅供参考,楼上写的完全c++风格,怎么感觉还不如c来的直爽...
...n(m≥1,n≤10 000),输出m ~n 之间所有的Fibonacci数。
int m,n,k,i;int fib(int i);printf("Input m: ");scanf("%d",&m);printf("Input n: ");scanf("%d",&n);for(k=m;k<=n;k++)for(i=1;fib(i)<=n;i++){ if(k==fib(i))printf("%.d ",k);} return 0;} int fib(int i){ if(i==1)return 1;if(i==2)ret...
C语言:输出m ~n 之间所有的Fibonacci 数
输入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≥1,n≤1 000),输出m ~n 之间的所有完数
int i;long wanshu=0;int n,x,y;cout<<"输入n:"<<endl;cin>>n;cout<<"输入x:"<<endl;cin>>x;cout<<"输入y:"<<endl;cin>>y;for(i=1;i<=n;i+=2){ wanshu+=pow(i,3);if(wanshu==1){ continue;} if(wanshu>=x&&wanshu<=y)cout<<"n以内的完数:"<<wanshu<<"\\t...
急!!输入2个正整数m和n(m>=1,n<=1000),输出m~n之间的所有完数,完数就是...
int m,n,a; m>=1; n<=1000; scanf("%d,%d",&m,&n);\/\/要输入逗号 你输入数据时有没输入逗号呢? for (a=m;a<=n;a++) {if (a==factorsum(a))\/\/是等于号 就这一个问题 其它地方都是对的 printf("%d ",a); } } int factorsum(int number) {int i=1,a=0; for(i=1;i<number;i...
1、 输入2个正整数m和n(1<=m,n<=6),然后输入该m行n列矩阵a中的元素,分 ...
1、 输入2个正整数m和n(1<=m,n<=6),然后输入该m行n列矩阵a中的元素,分别求出各行元素之和,并输出。 a306200119 | 浏览7358 次 |举报 我有更好的答案推荐于2017-12-16 09:33:15 最佳答案 #include <stdio.h>int main(){ int m,n; int i,j,s,d; printf("请输入m:"); scanf("%d",&...