[問題] 有關ForLoop旗標控制的問題

看板java作者 (Wade Lee)時間13年前 (2012/04/02 19:57), 編輯推噓3(305)
留言8則, 6人參與, 最新討論串1/1
小弟為JAVA&PTT初學者 剛學For迴圈 有一個題目是輸入分數最後算出總分與平均 要求輸入負分結束迴圈 以下為本人寫的 Scanner cin = new Scanner(System.in); System.out.println("輸入學生分數(負數結束):"); int score=1, sum=0, cnt; score=cin.nextInt(); for(cnt=0;score>=0;cnt=cnt+1){ sum+=score; } System.out.println("total = "+sum+", no="+cnt+", avg = "+sum/cnt); 結果compile也成功 但是執行時輸入任意分數後卻靜止不動了?! 也不能輸入任何數值= = 爬了許多文還是找不到問題>< 請求各位幫忙,感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.252.104.59

04/02 20:14, , 1F
死在迴圈了吧
04/02 20:14, 1F

04/02 20:25, , 2F
試試看在迴圈裡多加一行可以印出score的值的程式
04/02 20:25, 2F

04/02 21:00, , 3F
輸入正數後sum就一直纍加上去了呀 而score也還是正的
04/02 21:00, 3F

04/02 21:04, , 4F
是不是改用while(){}改寫會比較好些...for用在已知迴圈次數
04/02 21:04, 4F

04/02 21:07, , 5F
搭配 label: break;
04/02 21:07, 5F

04/02 22:09, , 6F
OK!大致了解了!感謝各位!
04/02 22:09, 6F

04/03 02:01, , 7F
邏輯怪怪的 不在loop 輸入?
04/03 02:01, 7F

04/03 14:57, , 8F
cin應該要在loop內吧
04/03 14:57, 8F
文章代碼(AID): #1FUPGI0y (java)