num = num + 2; sum = sum + num; 誰給我順順啊 這兩句上下一調(diào)輸出錯誤 是原理?是我還理解得不透徹?
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ? ??
int sum = 0; // 保存 1-50 之間偶數(shù)的和
? ? ? ??
int num = 2; // 代表 1-50 之間的偶數(shù)
? ? ? ??
do {
//實現(xiàn)累加求和
? ? ? ? ? ??
? ? ? ? ? ? num = num + 2;
sum = sum + num; // 每執(zhí)行一次將數(shù)值加2,以進(jìn)行下次循環(huán)條件判斷
? ? ? ? ? ??
} while ( num<=50 ? ); // 滿足數(shù)值在 1-50 之間時重復(fù)執(zhí)行循環(huán)
? ? ? ??
System.out.println(" 50以內(nèi)的偶數(shù)之和為:" + sum );
}
}
2018-09-01
?
2018-08-02
第一種情況:
sum=sum+num;
num = num + 2
這樣是先加完和,再判斷num是否小于等于50,例如當(dāng)num=50時執(zhí)行完循環(huán)體內(nèi)的代碼后num=50+2,條件不滿足所以就跳出循環(huán)了
第二種情況:
num = num + 2
sum=sum+num;
首先這樣會少一個初始值2,而且如果num=num+2的值剛好為50 后面的判斷條件為true,他會再執(zhí)行一次循環(huán)。sum=sum+num就變成了sum=648+52 ? ,然后在進(jìn)行判斷,結(jié)果為false才會跳出循環(huán)。所以值為700
2018-08-01
先num=num +2這時候num先執(zhí)行等于4,所以sum的初始值變成了4,之后就一直判斷下去直到num大于
50,跳出循環(huán),雖然這樣子是沒有語法錯誤,但是這樣子會使得50之內(nèi)的偶數(shù)sum之和加少了一個2,所以是錯誤的。
2018-07-19
你可以自己筆算一下,先進(jìn)行? num = num + 2會使得sum總和少加了一個初始num值(2)
2018-07-10
應(yīng)該是第一次num+sum為2+0? 然后? 每一次sum加上num之后? 再加num+2
2018-07-10
應(yīng)該是第一次sum+num為2+0? 然后? 每一次sum加上num之后? 再加num
2018-07-09
正確代碼循環(huán)得時候是不是 0+2 ? 2+2 ?判斷4不大于50 繼續(xù) 循環(huán) 第二次 是不是就是 2+4 ?4+2 了
2018-07-09
? ? ? ??
sum = sum + num;
num = num + 2;?// 每執(zhí)行一次將數(shù)值加2,以進(jìn)行下次循環(huán)條件判斷?