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

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

為什么num>0和num>1都是可以的

public class fortest{

public static void main(String[] args) {

int num = 999;

int count = 0;

do {

count++;

num = num / 10;

}

while (num>1);

System.out.print("這個數是" + count + "位數");

}

}



正在回答

2 回答

do{}whhile()循環先執行一次count++,然后用999>0或999>1判斷,執行第二次count++;然后用99>0或99>1判斷(注意定義的是int類型,所有輸出不是99.9,而是99);執行第三次count++;然后用0>0或0>1判斷,不成了,跳出循環,說白了第三次9/10輸出的int類型是0;所有num>0或num>1都是成立的。注意:num的類型不能改為double,否則就變成了死循環了。

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

當用num>1時,

因為你的num是999,首位數是9,在循環2次后結果是9,仍然大于1,所以還會繼續循環,最終循環3次,返回正確結果。

如果換成首位數是1的比如num=100就會出錯了,循環2次后結果是1,1不大于1,不滿足循環條件,退出循環,最終循環2次,返回結果是2位數,錯誤。

大于0是正確的。

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

舉報

0/150
提交
取消

為什么num>0和num>1都是可以的

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

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

幫助反饋 APP下載

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

公眾號

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