2017-02-22 47 views
0

我是一年级的大学生,开始我的计算机科学专业,所以对于任何新秀错误都很抱歉。我们刚刚开始使用if/else语句,并且主要在这个名为“Practice-It!”的网站上练习,这是一个Java,C++和Python的编程实践网站,尽管我目前正在学习Java。现在,我最近遇到了这个叫“evenOdd”的问题,在这个问题中我们需要从用户那里读取一个整数,如果它是一个偶数就打印“偶数”,如果它是一个奇数则打印“奇数”。确切的问题如下:为什么我的偶数代码产生一个输出?

编写Java代码从用户读取一个整数,然后打印,即使该数字是偶数,否则打印。你可以假设用户键入一个有效的整数。输入/输出应符合下面的例子:

Type a number: 14 
even 

我敢肯定,我知道如何做到这一点,但是当我在我裸露的代码输入,它不产生任何输出。我不确定为什么。我的代码如下:

int number; 
Scanner console = new Scanner(System.in); 
System.out.print("Type a number: "); 
number = console.nextInt(); 
if (number % 2 == 0) { 
    System.out.println("even"); 
} else  if (number % 2 != 0) { 
    System.out.println("odd"); 
} 

我应该提到我应该放在裸代码,意思是没有类或方法。

我不确定是否只是我或者网站有点故障。任何帮助深表感谢。

+1

它甚至不显示“键入一个数字:”行吗? – AntonH

+1

您的代码看起来正确。我会说这是网站的问题,或者网站希望输出的问题。我也会使用IDE以查看你在做什么。 –

+2

哪里是真正应该*运行*这个代码的主要方法? –

回答

0

你的代码是健全的,但如果这是你提交给编译器的所有代码,那么它将无法工作。您需要从java.util.Scanner中导入Scanner类,并且您需要在函数和类中运行代码,而不像可以在IDE或控制台中免费运行的python。这是为我工作的代码。

import java.util.Scanner; 

public class temp{ 

public static void main(String [] args){ 

    int number; 
    Scanner console = new Scanner(System.in); 
    System.out.print("Type a number: "); 
    number = console.nextInt(); 
    if (number % 2 == 0) { 
     System.out.println("even"); 
    } else if (number % 2 != 0) { 
     System.out.println("odd"); 
    } 
} 


} 

希望有帮助。

+0

刚刚看到的只是提交裸机代码而不是整个班级。 – sasasam

0

我建议你使用Eclipse或NetBeans等IDE。这些IDE将帮助您编写和调试您的代码。他们还会在您的代码中标记错误,并提供描述和快速修复,以帮助您编写代码。

package abc.xyz.test; 

import java.util.Scanner; 

public class EvenOdd 
{ 
public static void main(String... args) 
{ 
    Scanner input = new Scanner(System.in); 
    System.out.print("Enter a number: "); 
    if (input.nextInt() % 2 == 0) 
    { 
     System.out.println("even"); 
    } 
    else 
    { 
     System.out.println("odd"); 
    } 
    input.close(); 
} 
} 

您可以从https://www.eclipse.org/downloads/和NetBeans从https://netbeans.org/downloads/下载Eclipse。他们都是免费的,您不必为使用它们付费。

0

您需要从java.util包中导入扫描器。在每个Java程序中都必须有一个主要方法。尝试下面的代码。看我的代码我创建一个名为userInput的扫描器的实例,并在我的代码结束时,我调用close()方法来防止资源泄漏。你不会因为不关闭而出现任何错误,但这是良好实践的一部分。

import java.util.Scanner; 

public class Main { 

    public static void main(String[] args) { 

     int number = 0; 
     Scanner userInput = new Scanner(System.in); 
     System.out.println("Type a number"); 
     number = userInput.nextInt(); 

     if(number % 2 == 0) { 
      System.out.println("Even"); 
     } else { 
      System.out.println("Odd"); 
     } 
     userInput.close(); 

    } 

} 
相关问题