import java.util.Scanner;
public class Multiples {
public static void main(String[] args)
{
int number;
Scanner kb = new Scanner(System.in);
System.out.print("insert a number >");
number = kb.nextInt();
if (number >= 0 && number <= 100)
if (number % 7 == 0)
System.out.println("multiple of 7");
else
System.out.println("not a multiple of 7");
if (number % 2 == 0)
System.out.println(" multiple of 2");
else
System.out.println("not a multiple of 2");
else
System.out.println("choose a different number");
}
}
Run Code Online (Sandbox Code Playgroud)
代码工作正常,直到最后一刻.所有if语句都在接受测试的主IF内部工作.但是当我使用最后一个时,我得到语法错误.谁能告诉我哪里出错了?
您需要在最顶部添加括号 if
if (number >= 0 && number <= 100) {
if (number % 7 == 0)
System.out.println("multiple of 7");
else
System.out.println("not a multiple of 7");
if (number % 2 == 0)
System.out.println(" multiple of 2");
else
System.out.println("not a multiple of 2");
} else
System.out.println("choose a different number");
Run Code Online (Sandbox Code Playgroud)
一个if块需要花{}括号,如果你想要一个以上的语句来作为其身体的一部分来执行.在您的情况下,您有2个if-else语句.因此,你需要大括号.
否则它相当于
if (number >= 0 && number <= 100) {
if (number % 7 == 0)
System.out.println("multiple of 7");
else
System.out.println("not a multiple of 7");
}
if (number % 2 == 0)
System.out.println(" multiple of 2");
else
System.out.println("not a multiple of 2");
else
System.out.println("choose a different number");
Run Code Online (Sandbox Code Playgroud)
并且最后一个else没有对应的if,这在Java中语法上是不正确的.
我们都建议您始终使用括号,而不管要在if-else块中执行的语句数量.
| 归档时间: |
|
| 查看次数: |
27 次 |
| 最近记录: |