作者watelee (Wade Lee)
看板java
標題[問題] 有關ForLoop旗標控制的問題
時間Mon Apr 2 19:57:03 2012
小弟為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
推 jeffrank:死在迴圈了吧 04/02 20:14
→ jeffrank:試試看在迴圈裡多加一行可以印出score的值的程式 04/02 20:25
→ asilzheng:輸入正數後sum就一直纍加上去了呀 而score也還是正的 04/02 21:00
→ ssc24:是不是改用while(){}改寫會比較好些...for用在已知迴圈次數 04/02 21:04
→ ssc24:搭配 label: break; 04/02 21:07
→ watelee:OK!大致了解了!感謝各位! 04/02 22:09
推 hate9527:邏輯怪怪的 不在loop 輸入? 04/03 02:01
推 SACkings55:cin應該要在loop內吧 04/03 14:57