statements - while loop java




家庭作業使用循環計數(Java) (4)

你在打印之前遞減i = 0條件檢查i <4是真的然後i = i-1等於-1並且再次打印i <4再次遞減我現在-2是-1所以這就是為什麼你得到無限循環

System.out.println(i + " "); 
i++;

這個任務是...

寫一個while循環,打印1到userNum ,使用變量i 。 按照每個數字(甚至最後一個)的空格。 假設userNum是正數。 例如: userNum = 4打印: 1 2 3 4

這是我的:

  int userNum = 0;
  int i = 0;

  userNum = 4;     // Assume positive

  while (i < 4) {
     i = userNum - 1;
     System.out.print(userNum + " ");
  }

  System.out.println("");

我不斷收到一個無限循環錯誤。 任何幫助是極大的讚賞。 我是Java新手,仍在努力弄清楚。


你應該使用i ++

while (i < userNum) {
     i++;
     System.out.print(i + " ");
  }

更改

while (i < 4) {
    i = userNum - 1;
    System.out.print(userNum + " ");
}

像(因為你想1userNum ,或在這種情況下4

while (i < userNum) {
    System.out.printf("%d ", ++i); // <-- since you want to start at 1.
}

正如你重置i的初始值減1每次迭代(因此無限循環)。


請嘗試下面的代碼,我相信這將解決您的問題。

    int i = 0;
    int userNum = 4;
    while (i < userNum) {
    i++; //keep incrementing i till its less than userNum
    System.out.print(i + " "); //keep printing i till its less than userNum
    }
//come out of the loop when i becomes greater than userNum




while-loop