qq_82年的彬鍋鍋_03446807
2016-06-11 21:53:12
package com.imooc;public class HelloWorld{ public static void main(String[] args){ int sum=0; int i=1; do { if(i%2==0);{ sum=sum+i; i++;} }while(i<=50); System.out.println("50內(nèi)的偶數(shù)和:"+sum); } }
3 回答
已采納

qq_青棗工作室_0
TA貢獻(xiàn)446條經(jīng)驗(yàn) 獲得超754個(gè)贊
public?class?HelloWorld?{ public?static?void?main(String[]?args)?{ int?sum?=?0; int?i?=?1; do?{ if?(i?%?2?==?0) { sum?=?sum?+?i; } i++; }?while?(i?<=?50); System.out.println("50內(nèi)的偶數(shù)和:"?+?sum); } }
主要是把 i++ 放到括號(hào) {} 的外面。

qq_狼神_03279945
TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超0個(gè)贊
有兩個(gè)錯(cuò)誤。
第一個(gè)錯(cuò)誤是,你if判斷語(yǔ)句的判斷執(zhí)行條件后面有一個(gè)分號(hào),雖然編輯器不報(bào)錯(cuò),但結(jié)果是錯(cuò)的。
第二個(gè)錯(cuò)誤是,你把i++放進(jìn)了if判斷語(yǔ)句中。想像一下,如果i % 2 != 0的話,那么就不會(huì)執(zhí)行i自加1,也就是說(shuō)i的值不會(huì)變,那么會(huì)一直執(zhí)行下去這個(gè)do```while循環(huán),形成死循環(huán)。
還有一點(diǎn),為了讓程序看起來(lái)?xiàng)l理清晰,我們一般把i=1;寫成i = 1;當(dāng)然,你不這樣寫也沒關(guān)系。
修改之后的代碼:
package?demo; public?class?HelloWorld{ public?static?void?main(String[]?args){ ???int?sum?=?0; ???int?i?=?1; ???do?{ ?????if(i?%?2?==?0){ ????????sum=sum+i; ????????} ?????i++; }while(i<=50); System.out.println("50內(nèi)的偶數(shù)和:"+sum); } }
添加回答
舉報(bào)
0/150
提交
取消