提问人:HarleyFerrari 提问时间:4/28/2022 最后编辑:TylerHHarleyFerrari 更新时间:4/28/2022 访问量:54
谁能告诉我为什么我的程序给我一个 fizz9 的输出,而不仅仅是 fizz?[复制]
Can anyone tell me why my program is giving me a output of fizz9 instead of just fizz? [duplicate]
问:
谁能告诉我为什么我的程序给我一个 fizz9 的输出,而不仅仅是 fizz?
import java.util.Scanner;
/**
* Write a description of class fizzbuzz here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class FizzBuzz
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int n = in.nextInt();
boolean fizz = n % 3 == 0;
boolean buzz = n % 5 == 0;
在这种情况下,我只能使用嘶嘶声和嗡嗡声。
if (fizz)
{
System.out.println("fizz");
}
if (buzz)
{
System.out.println("buzz");
}
else
{
System.out.println(n);
}
System.out.println();
}
}
答:
0赞
EJoshuaS - Stand with Ukraine
4/28/2022
#1
问题是你的陈述。如果是 3 的倍数(但不是 5),则为 true(因此打印“嘶嘶声”)。但是,将是假的(因此打印)。else
n
fizz
buzz
n
您确定要打印吗?也许你的意思是检查以确保两者都是假的?(如果是这样,您应该将其从 更改为 )。n
fizz
buzz
else
else if (!fizz)
评论
if (...) { ... }
if (...) { ... } else { ... }