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

有大佬知道为什么输出的是324么?

public class HelloWorld{

public static void main(String[] args){

double num = 0.9;

int count = 0;

if(num>0){

for(;num>0;){

num/=10;count=++count;

}System.out.print(count);

}else{

System.out.println("输入有误");

}

}

}


正在回答

2 回答

换成int就好了用double永远除不尽。int的好处就是省略小数点

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

首先你得知道你想要实现什么

你定义num=0.9,然后循环是num/10,如果num>0,count+1,

你一直除以10  他一直是大于0的  所以循环一直进行   理论上你得到的结果应该是无穷  因为num趋近于0且永远>0

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

举报

0/150
提交
取消

有大佬知道为什么输出的是324么?

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