yuanyuan_0005
2016-02-28 09:40:18
int?sum=0;
for(a=1;a<=50;a++){
while(a%2==0){
sum=sum+a;
}
}
3 回答
已采納

hanian
TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超2個(gè)贊
將while改成if即可,while是循環(huán)語句的關(guān)鍵詞,條件滿足的話,會(huì)執(zhí)行大括號(hào)里的語句,接著返回while里的判斷條件,如果滿足,再次執(zhí)行,而if則是只判斷一次

Davidham3
TA貢獻(xiàn)8條經(jīng)驗(yàn) 獲得超0個(gè)贊
當(dāng)a等于2時(shí),a%2==0為True,將會(huì)一直執(zhí)行sum = sum + a,導(dǎo)致程序死循環(huán)。應(yīng)將while(a % 2 ==0) 改為 if( a % 2 ==0)

喬幫主
TA貢獻(xiàn)184條經(jīng)驗(yàn) 獲得超67個(gè)贊
int?sum=0;
for(a=1;a<=50;a++){
????while(a%2==0){
????????sum=sum+a;
????}
}
這里改成
? ? if(a%2==0){
????????sum=sum+a;
????}
這樣才行!
添加回答
舉報(bào)
0/150
提交
取消