求解是一个死循环

来源:4-15 编程练习

慕娘5253255

2017-10-28 14:17

public static void main(String[] args){

int num=999;

int count=10;

int j=0;

for(;num<=999999999&&num>=0;){

num/=count;

j++;

}

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

}

}


写回答 关注

2回答

  • 72fc5c0f8317
    2017-10-28 14:35:39
    已采纳

    for(;num<=999999999&&num>=0;)这里错误,num一开始赋值999,然后for循环里面第二个条件是判断循环结束的,接着for循环里面的 num /= count,算到最后num最小也只能是0,然后始终满足num<=999999999&&num>=0,所以你这循环结束不了。你改成num<=999999999&&num>0,少一个=号就行了

    72fc5c... 回复72fc5c...

    上面是 num /= 10,打错了

    2017-10-28 20:06:15

    共 4 条回复 >

  • 慕娘5253255
    2017-10-28 14:34:28

    public static void main(String[] args){

    int num=46464646;

    int count=0;

    for(;num<=999999999&&num>0;){

    num/=10;

    count++;

    }

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

    }

    //问题已解决int型

    慕虎6245...

    为什么是num>0,0.9也是大于0 啊

    2017-10-28 19:36:29

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题