while循環(huán)判斷一個數(shù)字是幾位數(shù)的問題關(guān)于count
如下面的程序,想知道count在這里面的意義是什么,我目前的困惑是:num和count貌似沒有明顯的交集,為什么卻可以通過count的運算來推斷出num的位數(shù)?我感覺應(yīng)該是我鉆牛角尖了,百思不得其解。求前輩們解惑。
if (num >= 0 ?&& num<=999999999){
while(num != 0){
count++;
num/=10;
}
System.out.println("它是個"+ count+"位的數(shù)!");
} else{
System.out.println("輸入有誤!");
}
2018-04-28
舉個例子:第一次循環(huán)999/10=99.9
??????????????? 第二次循環(huán)99.9/10=9.9
?????????????? 第三次循環(huán)9.9、10=0.99(<1)循環(huán)結(jié)束
循環(huán)3次3位數(shù)????? count記載循環(huán)次數(shù)就是位數(shù)
2018-05-20
你們都答錯了 /是只取整數(shù)部分的 分別是 99? 9?? 0? 判斷條件是!=0 所以count加了三次后 就退出while循環(huán)了
2018-05-19
上面答案我覺得不對 我也是萌新自己研究了一番? ?sum=999 可以循環(huán)三次是因為 sum/=10等于 sum=sum/10
999/10 = 99.9 循環(huán)一次
99.9/10 =? 9.99 循環(huán)二次
9.99/10 = 0.99 循環(huán)三次
因為定義的是int整形變量所以無法再進行循環(huán)所以count++到3時就結(jié)束了