我认为我的代码是正确的,但是当我运行它时,我的输出语句在底部不会产生。我要求键盘输入任意数字,然后输入-1结束。我的while循环包括添加数字,创建总和,以及给出偶数的数量。当我测试我的代码时,我一直在输入1,2,3,4,希望能够产生4个总数。 2甚至是10的总和。为什么'我的代码没有进入打印语句?如何关闭while循环
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
System.out.println("Please enter a number. Enter -1 to stop program.");
int num = sc.nextInt();
int counter = 0;
int even = 0;
int sum = 0;
while (num != -1)
{
counter += 1;
sum += num;
if (num%2 == 0)
{
even +=1;
}
}
System.out.println("You have entered "+ counter + "number(s)");
System.out.println("You have entered "+ even + "even numbers");
System.out.println("The sum for the numbers you entered is "+ sum);
}
你永远不会修改'num'的值,因此如果'num!= -1',这将是一个无限循环。 – rcs 2015-02-23 03:34:50
这是否意味着我需要在我的while循环中询问扫描仪是否有另一个int? – JavaBeginner 2015-02-23 03:35:37
是的,你需要让扫描仪的另一个int来输入一个新的值。你可以在while循环的最后部分做到这一点。 – rcs 2015-02-23 03:37:10