亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

正在回答

1 回答

這個循環的邏輯就是:假如num為兩位數,兩位數除以10得一位數對吧,(同理三位數除以10就是兩位數),然后count自加1,此時count為1,好,回到循環,判斷條件的1位數不等于0,循環條件滿足,那么繼續往下走,1位數除以10等于0對吧,此時count自加1,count的值變為2,好,再次回到循環的判斷條件,0!=0的結果為fause,循環條件不滿足,循環塊不運行,到這里for循環結束,打印,這個數為count位數,count的值為2,也就是打印2位數。不知道我這樣說你能明白不。

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

寇丁瑪斯特

我自己推導了一下,是不是這樣理解更好: 因為 num 是 int,所以用 num 一直去 /= 10,得到的總是一個整數,比如我們用題里的 999 一直去除 10,第一次得到的是 99,此時 count++,計為 1,再次循環,得到 9,count++得到 2,再次循環,得到 0,count++得到 3,再往后計算就條件不成立,沒法繼續 /= 10 了,所以此時循環結束,打印 count 計算的結果。就是 3 位數
2022-05-19 回復 有任何疑惑可以回復我~
#2

寇丁瑪斯特

這也是為什么有一個問答里有同學問 count++和 num /=10的順序能否顛倒,我自己試了下是無所謂前后的,因為 count++其實只是依靠 if 和 while 的組合條件在無腦累加 1,加到 while 執行不下去的時候就停止累加打印出來了
2022-05-19 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么這里要這個

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號