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

求解是一个死循环

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+"位的数");

}

}


提问者:慕娘5253255 2017-10-28 14:17

个回答

  • 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,少一个=号就行了

  • 慕娘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型