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

麻烦朋友帮我解释一下while里面的代码 有点不懂 尤其是num的

if (num >= 0  && num<=999999999){
while(num != 0){
count++;
num/=10;
}
System.out.println("它是个"+ count+"位的数!");
} else{
System.out.println("输入有误!");
}


提问者:KoBe鹏鹏 2015-06-02 09:54

个回答

  • 慕粉3804000
    2016-09-10 20:00:02

    很棒,我要加油学

  • 秋小沫
    2016-05-18 14:47:35

    6666

  • Perona
    2015-06-02 11:20:38

    把代码注释给你看吧。

    if (num >= 0  && num<=999999999){   //当num大于等于0并且小于等于999999999
    while(num != 0){  // 如果num不等于0
    count++;         //count自增1
    num/=10;        //num除以10并赋值给num
    }
    System.out.println("它是个"+ count+"位的数!");
    } else{
    System.out.println("输入有误!");
    }

    这里主要要明白while循环语句。当满足条件时进入循环,不满足跳出。这里即如果num不等于0,即满足条件,那么执行循环。count是用来计算循环次数的。

    如本例:

    num等于999,它满足不等于0,执行循环,

    第一次循环count自增1等于1,999除以10等于99。注:因为num是int型,所以除后得到的数字还是int型。

    99满足不等于0,执行循环,

    第二次循环count自增1等于2,99除以10等于9。

    9满足不等于0,执行循环,

    第三次循环count自增1等于3,9除以10等于0。

    0不满足不等于0,跳出循环。