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

为什么代码中的num/=10, 是显示的num的位数?

public class HelloWorld{
public static void main(String[] args){
int num = 9999;
int count = 0;
if(num>0&&num<=999999999){
while(num!=0){
count++;
num/=10;
}
System.out.println("他是个"+count+"位的数");
}else{
System.out.println("输入有误!");
}
}
}

正在回答

2 回答

你这个循环出来不就是求num的个数吗?

因为num是int不会有小数所以每次num/=10;num的位数就少一位,然后每少一位count++,那num到0的时候count的值就是num的位数

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

未完記憶 提问者

非常感谢!
2015-12-02 回复 有任何疑惑可以回复我~

"num/=10"每执行一次,num的小数点向左移动一位,该数的位数即增加“1”个

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

未完記憶 提问者

感谢了
2015-12-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么代码中的num/=10, 是显示的num的位数?

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