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

答案一样,但是为什么显示运行成功,输出错误呢?求大佬解答

public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
    while (num>0 && num<1000000000) {
        num /= 10;
        count++;
    }
    System.out.println("它是个"+count+"位的数");


}
}


正在回答

2 回答

 应该是 while (num>1 && num<1000000000) 吧,不然999/10是始终比0大的数

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

qq_慕UI9173242

9/10=0.9计算机不会四舍五入,int类型没有小数就直接抄小数点前一位数字,所以999/10=99,99/10=9,9/10=0.
2019-10-29 回复 有任何疑惑可以回复我~
#2

迷茫的小学生gpf 回复 qq_慕UI9173242

你说的对
2019-10-29 回复 有任何疑惑可以回复我~

System.out.println("它是个"+count+"位的数");

兄弟你少感叹号了 

!!!!!!!!!!!!!!!

System.out.println("它是个"+count+"位的数!");


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

举报

0/150
提交
取消

答案一样,但是为什么显示运行成功,输出错误呢?求大佬解答

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