亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為啥用while,得出的結果是27, 用下面這個for得出的結果是21

public class HelloWorld {

? ? public static void main(String[] args) {

? int sum=0;

? int i=1;

? while(i<=10){

?i++;

?sum=sum+i;

if(sum>20){

?

?

System.out.println(sum);

break;

}?

? } ?}

}

為啥用while,得出的結果是27,

用下面這個for得出的結果是21

public class HelloWorld {

? ? public static void main(String[] args) {

// 保存累加值

int sum = 0;

// 從1循環到10

for (int i = 1; i <= 10; i++) {

// 每次循環時累加求和

sum = sum + i;

// 判斷累加值是否大于20,如果滿足條件則退出循環

if ( sum>20 ? ? ? ? ? ? ) {

System.out.print("當前的累加值為:" + sum);

//退出循環

break;

}

}

}

}


正在回答

4 回答

同學你好,你這個while循環內不應該先i++,因為你初始值i=1并沒有加上,把?sum=sum+i;和?i++;換位子就好了。

1 回復 有任何疑惑可以回復我~
#1

慕圣9147075 提問者

非常感謝!
2017-07-06 回復 有任何疑惑可以回復我~

把?sum=sum+i;和?i++;換位子就好了,你這樣寫的話,i要先執行自增的,并不是你要的1累加到10,而是從2累加到10,累加值大于20結束

1 回復 有任何疑惑可以回復我~

把?sum=sum+i;和?i++;換位子就好了。其實你不換位置把int i=1改成int i=0 也可以

1 回復 有任何疑惑可以回復我~

因為你的while循環第一次sum=0+2;后面就會不正確,不信你可以調試一下。

2 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為啥用while,得出的結果是27, 用下面這個for得出的結果是21

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號