請大佬解釋一下不是很理解他的代碼含義
if (num >= 0 ?&& num<=999999999){
while(num != 0){
count++;
num/=10;
}
System.out.println("它是個"+ count+"位的數!");
} else{
System.out.println("輸入有誤!");
}
他這里循環的是什么,只要num不等于0,count就加一,那一開始count為0,他這里什么時候count停止增加
還有num/=10作用是什么
比如說num是9,那9/=10不是0.9嗎
2019-03-11
/是整數除的意思 9/10==0
num/=10;這個作用是每次循環都去掉一位
直到位數為0
count為0這個意思就是假設他是0位,循環一次加一位
2019-03-14
我覺得應該這樣理解,999是整數,定義的時候用的int,int是整數數據類型,只能存儲整數,不能存儲小數點,999每次除10的 時候,程序默認把小數點抹掉了,比如第一次循環99.9,其實是99進行的下次循環判斷,然后是9.9其實是9,在下一次0.9,變成0,一共循環三次count==3,最后輸出結果是3位數,其實就是用循環了幾次來判斷他是幾位數的。
2019-03-12
首先num在0-999999999之間,以999為例。
當num不等于0時。count遞增。(因為不等于0時他至少是1位數)這時num/10=99,再循環到if。
三次循環之后num/10=0.99(小于1)那么系統直接輸出count。
else后面的表示。當while條件不成立時(num=0)直接輸出輸入有誤。