為什么能打印5?
? ? ? ? ? ? int x = 2;
? ? ? ? ? ? do
? ? ? ? ? ? {
? ? ? ? ? ? ? ? x++;
? ? ? ? ? ? ? ? Console.WriteLine(x);
? ? ? ? ? ? }
? ? ? ? ? ? while (x > 2 && x <= 4);? ? //結(jié)果是3 4 5? ?,5是怎么來的,5不是不滿足while的條件嗎?
? ? ? ? ? ? int x = 2;
? ? ? ? ? ? do
? ? ? ? ? ? {
? ? ? ? ? ? ? ? x++;
? ? ? ? ? ? ? ? Console.WriteLine(x);
? ? ? ? ? ? }
? ? ? ? ? ? while (x > 2 && x <= 4);? ? //結(jié)果是3 4 5? ?,5是怎么來的,5不是不滿足while的條件嗎?
2018-10-26
舉報
2018-10-26
第一次循環(huán)的時候不需要對x的值進(jìn)行判斷,這時x = 2,然后x++變成了3;此時輸出的3
第一次循環(huán)結(jié)束以后才對x的值進(jìn)行判斷,這時x = 3滿足 x > 2 && x <= 4 的條件
執(zhí)行第二次循環(huán),這時x = 3 然后 x++ 變成了4,此時輸出4;
第二次循環(huán)結(jié)束仍然滿足條件,這時x = 4
繼續(xù)第三次循環(huán),然后進(jìn)行了x++(劃重點),這時x = 5了,做最后一次輸出,此時輸出的x是5
第三次循環(huán)結(jié)束,再判斷x的值已經(jīng)不滿足循環(huán)的條件了,循環(huán)結(jié)束