我認爲我的代碼是正確的,但是當我運行它時,我的輸出語句在底部不會產生。我要求鍵盤輸入任意數字,然後輸入-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