求大佬解释下这段代码

来源:4-15 编程练习

qq_慕无忌3144653

2019-05-29 19:48

int num = 999;
int count = 0;

if (num >= 0  && num<=999999999){

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

写回答 关注

2回答

  • 慕侠2091547
    2019-05-29 20:22:28
    已采纳

    输入一个数字,计算它的位数。

    判断num的位数是不是大于0位小于10位

    一个循环,num/10如果不等于0,count就加一

    慕圣9167... 回复慕莱坞529...

    不等于0肯定要加一啊

    2019-06-13 11:36:44

    共 2 条回复 >

  • 稳打稳扎
    2019-07-14 00:10:28

    999!=0,count加一为1;因为是int是整型数据类型,当第一次num/10时,num=99,count加一就成了2;第二次就是99/10=9.9,因为是int的数据类型的问题,所以就变成了9,count加一变成了3;第三次就是9/10=0.9,取整为0,与判断语句num不等于0不符,所以跳出循环,打印count

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165547 学习 · 17586 问题

查看课程

相似问题