为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦问一下这个代码是什么逻辑,就是说count为什么会等于3呢?

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


正在回答

5 回答

/  是取整运算符,num第一次进入循环时count=1,num的运算结果为99。第二次进入循环count=2,num结果为9。第三次进入循环后count=3;‘num/=10’==‘9/=10’,因为是取整运算,num的结果值为0。此时num的值不满足循环条件。程序自动跳出执行下面的语句就是count=3了。

希望能帮到你。

0 回复 有任何疑惑可以回复我~
#1

qq_刘朋飞_0 提问者

非常感谢!
2016-03-31 回复 有任何疑惑可以回复我~

num = 1234 /= 10

num = 123  count = 1

num = 12 count = 2

num = 1 count = 3

num = 0 conut = 4


0 回复 有任何疑惑可以回复我~
int num = 999;
int count = 0;
/*下面进入while循环 如果 num不等于0则 count+1,num=num/10*/
count=1;
num=99;
/*再次循环  count=count+1=2;num=9*/
/*第三次循环 count=count+1=3;num=0;循环停止*/
0 回复 有任何疑惑可以回复我~

int num = 999;

int count = 0;

0 回复 有任何疑惑可以回复我~

if 语句上面应该有num 和 count的赋值

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

麻烦问一下这个代码是什么逻辑,就是说count为什么会等于3呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信