課程
/后端開發
/Java
/Java入門第一季(IDEA工具)升級版
如圖所示? 在myeclipse上會一直循環
2019-03-07
源自:Java入門第一季(IDEA工具)升級版 5-1
正在回答
循環是要有出口的,沒有出口的循環就是死循環,你這里循環的條件是score等于0,如果score小于60,就把次數加1,但是你的count與score沒有任何關系,下次循環進來還是0 且小于60,所以你最后的count++條件要改成類似score相關的,保證score有變化,且經過一定次數循環后,有可能大于60,這樣循環才能停止,否則就是死循環
?public static void main(String[] args) {??????? ??????? // 變量保存成績??????? int score = 53; ??????? ??????? // 變量保存加分次數??????? int count = 0;
??????? //打印輸出加分前成績 ????????? System.out.println("加分前成績:"+score);?????? ??????? ??????? // 只要成績小于60,就循環執行加分操作,并統計加分次數??????????? if(score<60){??????????????? for(int i=0;score<60;score++){??????????????????? count++;??????????????? } System.out.println("加分后成績:"+score);???????????????????? System.out.println("共加了"+count+"次");??????????????? }else{?????????????? ??????????????? System.out.println("出錯啦");??????????????? ??????? //打印輸出加分后成績,以及加分次數??????????????? ??????????????? }
??? }}
// 變量保存成績
? ? ? ? int score = 53;?
? ? ? ??
? ? ? ? // 變量保存加分次數
? ? ? ? int count = 0;
? ? ? ? ?System.out.println("加分前成績:"+score);
? ? ? ? for(int i=1;i<=60;i++){
? ? ? ? ? ? if(score<60){
? ? ? ? ? ? ? ? count++;
? ? ? ? ? ? ? ? score++;
? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? System.out.println("加分后成績:"+score);
? ? ? ? System.out.println(count);
while(score<60){??????????? score++;??????????? count++;} System.out.println("加分后成績:");System.out.println("共加了"+count+"次!");
你的for循環 score的值一直等于0沒變,所以一直滿足循環條件就一直循環。你可以用while語句試寫一下?
你的score 值一直沒有變化,if 的條件一直是true,你的for 循環會一直執行的
舉報
0基礎萌新入門第一課,從Java環境搭建、工具使用、基礎語法開始
2 回答這樣寫為什么一直循環呢?
5 回答為什么不會死循環?
2 回答這個i=i++為啥一直循環啊
3 回答為什么循環條件是num!=0 我一直搞不懂啊?。?!
4 回答為什么循環會斷掉?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-03-08
循環是要有出口的,沒有出口的循環就是死循環,你這里循環的條件是score等于0,如果score小于60,就把次數加1,但是你的count與score沒有任何關系,下次循環進來還是0 且小于60,所以你最后的count++條件要改成類似score相關的,保證score有變化,且經過一定次數循環后,有可能大于60,這樣循環才能停止,否則就是死循環
2019-04-27
?public static void main(String[] args) {
???????
??????? // 變量保存成績
??????? int score = 53;
???????
??????? // 變量保存加分次數
??????? int count = 0;
??????? //打印輸出加分前成績
????????? System.out.println("加分前成績:"+score);
??????
???????
??????? // 只要成績小于60,就循環執行加分操作,并統計加分次數
??????????? if(score<60){
??????????????? for(int i=0;score<60;score++){
??????????????????? count++;
??????????????? } System.out.println("加分后成績:"+score);
???????????????????? System.out.println("共加了"+count+"次");
??????????????? }else{
??????????????
??????????????? System.out.println("出錯啦");
???????????????
??????? //打印輸出加分后成績,以及加分次數
???????????????
??????????????? }
??? }
}
2019-03-25
// 變量保存成績
? ? ? ? int score = 53;?
? ? ? ??
? ? ? ? // 變量保存加分次數
? ? ? ? int count = 0;
? ? ? ? ?System.out.println("加分前成績:"+score);
? ? ? ? for(int i=1;i<=60;i++){
? ? ? ? ? ? if(score<60){
? ? ? ? ? ? ? ? count++;
? ? ? ? ? ? ? ? score++;
? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? System.out.println("加分后成績:"+score);
? ? ? ? System.out.println(count);
2019-03-20
while(score<60){
??????????? score++;
??????????? count++;
}
System.out.println("加分后成績:");
System.out.println("共加了"+count+"次!");
2019-03-10
你的for循環 score的值一直等于0沒變,所以一直滿足循環條件就一直循環。你可以用while語句試寫一下?
2019-03-07
你的score 值一直沒有變化,if 的條件一直是true,你的for 循環會一直執行的