问答详情
源自:4-15 编程练习

为什么会num>0;

do

{

    count++;

    num=num/10; 

}

while(num >0);


System.out.println("它是个" + count + "位的数!");

}

}


提问者:熟识的滋味 2016-08-03 16:51

个回答

  • ProjectD_cg
    2016-08-03 20:04:43

    "/"是整除运算,每一次执行num/10,num就会少了一位,比如原来是三位数,执行后就是两位数了,执行一次之后判断条件num>0是否符合,符合就继续循环执行,直到num是个位数时,此时num/10=0,循环结束。

  • KingSlim
    2016-08-03 17:45:15

    将原num理解成一个多位的数组,执行循环体时每一位都要遍历到(个、十、百、千……),在对最后一位执行循环体后num=0,此时就该跳出循环啦。循环条件当然是num>0

  • 小墓慕
    2016-08-03 17:08:30

    对原来的数字进行循环除于10的操作,最后的一次操作,操作到一定的次数结果会小于1,对于整型数来说,不满1将会被舍去,结果为0,所以判断条件是num>0.

  • 湾水哥哥
    2016-08-03 16:56:04

    因为对于/算法,是省略余数的。num=num/10,你可以看作是把num直接去掉最后一位的操作。