2015-06-24 37 views
-13

我是新来这个java语言,请帮我出:请帮我用java编程错误

import java.util.Scanner; 

class MyClass { 

    public static void main(String[] args){ 
     System.out.println("give any number"); 
     Scanner n = new Scanner(System.in); 
     for(int x = 0; n < x; x++){ 
      if(x==3){ 
       System.out.println("fizz"); 
       x = x+1; 
      } else if(x==5){ 
       System.out.println("buzz"); 
       x = x+1; 
      } else { 
       System.out.println("x"); 
       x = x+1; 
      } 
     } 
    } 
} 
+5

请发表您的错误 – xrcwrn

+1

@borra这是什么'为(X = 0; N

+2

告诉错误和你的问题 – Sybren

回答

0

1)需要从Scanner

得到int值变化

Scanner scanner = new Scanner(System.in); 
     int n = scanner.nextInt(); 

2.)在for loop更改比较中,x从0开始,从而改变相应

变更

for (x = 0 ; x < n ; x++) { 

代码如下

public static void main(String[] args) { 
     int x = 0; 
     System.out.println("give any number"); 
     Scanner scanner = new Scanner(System.in); 
     int n = scanner.nextInt(); 
     for (x = 0 ; x < n ; x++) { 
      if (x == 3) { 
       System.out.println("fizz"); 
       x = x + 1; 
      } else if (x == 5) { 
       System.out.println("buzz"); 
       x = x + 1; 
      } else { 
       System.out.println("x"); 
       x = x + 1; 
      } 
     } 
    } 

输出

give any number 
3 
x 
x 
+0

和如何处理这个输出它接缝没用! – Hiru

0
import java.util.Scanner; 

class MyClass { 

public static void main(String[] args) 
{ 
    int x=0; 
    int i=1; 
    System.out.println("give any number"); 
    Scanner n = new Scanner(System.in); 
    i= n.nextInt(); 
    for(x=0;i<x;x++) 
    { 
     if(x==3) 
     { 
      System.out.println("fizz"); 
      x=x+1; 
     } 
     else if(x==5) 
     { 
      System.out.println("buzz"); 
      x=x+1; 
     } 
     else 
     { 
      System.out.println("x"); 
      x=x+1; 
     } 
    } 
} 
} 
+0

这个答案正确吗?如果我给出的输入大于0,似乎并没有运行循环。你认为'i Aakash

+1

错了。这在输入正数时不会产生任何输出。我想知道OP为什么接受它。此外,如果您提供关于更改的一些解释而不是发布仅用于代码的答案,那更好。 –

+0

他们是细节家伙,你可以改变我和x的初始值。代码可以编译?是。 – magirtopcu

0

你必须得到Scanner你的价值int n = num.nextInt();让扫描仪值INT。

Scanner num = new Scanner(System.in); 
     int n = num.nextInt(); 
     for(x=0;n<x;x++) 
0

你提到你的expected output 做..

import java.util.Scanner; 

class MyClass { 

    public static void main(String[] args) {    
      int x = 0; 
      System.out.println("give any number"); 
      Scanner num = new Scanner(System.in); 
      int n = num.nextInt(); 
      for (x = 1; x <= n; x++) { 

       if (x == 3) { 
        System.out.println("fizz"); 
       } else if (x == 5) { 
        System.out.println("buzz"); 
       } else { 
        System.out.println(x); 
       } 

      } 
    } 
} 

输出:

give any number 
5 
1 
2 
fizz 
4 
buzz