第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

求大佬指點為何本代碼中關(guān)于for循環(huán)下面的if循環(huán)僅執(zhí)行了兩次?

package?imooc;
public?class?HelloWorld?{	
??public?static?void?main(String[]?args){?	??
????int?num?=?999;	??
????for(int?count?=?1;count?>=0&&count?<=?999999999;count++){		??
??????if(num?/?10?==?0){			??
????????System.out.println("它是個"?+?count?+?"位的數(shù)!");			??
??????????break;		??
??????}else{			???
?????????num?=?num?/?10;		??
??????}	??
????}	
??}
}

? ? ?首先我認為代碼中if循環(huán)會執(zhí)行三次,所以我在for循環(huán)中將變量count初始化為0,三次循環(huán)后輸出“它是個3位的數(shù)!”,從而實現(xiàn)任務需求。然而實際運行后發(fā)現(xiàn)if循環(huán)僅執(zhí)行兩次,所以我將for循環(huán)中count變量重新初始化為1方使得程序得以輸出正確結(jié)果。所以求各位大佬指點為何if執(zhí)行了兩次后變量num的值便滿足if循環(huán)后的判斷條件“num / 10 == 0”呢?謝謝指點!

正在回答

2 回答


因為num=num/10會執(zhí)行兩遍,第三次num/10==0,所以會滿足if里面的判定條件,執(zhí)行輸出語句,如果count初始化為0的話,此時count==2,而此時會執(zhí)行if里面的break,會跳出整個循環(huán),所以count初始化必須為1,換句話說,else后面的語句運行了兩次,if后面的語句運行了一次,而for循環(huán)僅僅執(zhí)行兩次。

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

龍王大毛球 提問者

了解了,若if后面的判斷語句為“num == 0”的話,count可初始化為0對吧!
2019-02-26 回復 有任何疑惑可以回復我~
#2

張小白菜

嗯,對的
2019-02-26 回復 有任何疑惑可以回復我~

難道是因為if對括弧中表達式進行判斷的同時已將“num / 10”的值賦給了num?

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

舉報

0/150
提交
取消

求大佬指點為何本代碼中關(guān)于for循環(huán)下面的if循環(huán)僅執(zhí)行了兩次?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號