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

0也是1位数

while里面判断num不为0,是不是忽略了0本身也是1位数。。

提问者:沙漠的裟 2015-07-27 11:25

个回答

  • Perona
    2015-07-27 12:10:46
    已采纳

    0是自然数,不是一位数。一个数的最高位不能是0。为什么要这样规定呢?因为若没有这样的规定,0就是一位数,由此可以得出最小的两位数是00,最小的三位数是000,这样的结论显然是不对的。不仅这样,若没有这样的规定,对一个数也就无法确定它是几位数了。例如,15是两位数,“015”就变成了三位数,“0015”就变成了四位数。这样,同一个数我们可以随意称它为几位数,“位数”这一概念的存在也就没有必要了。因此,一个数的最高位不能“0”。

  • 沙漠的裟
    2015-07-27 12:27:27

    有道理。。囧。。