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

有大佬知道为什么输出的是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("输入有误");

}

}

}


提问者:qq_慕尼黑4184430 2021-01-09 22:57

个回答

  • 慕标9006246
    2021-05-25 10:53:35

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

  • Ai_XY
    2021-01-10 21:31:14

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

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

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