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

求解释,不知道哪里错了

public class HelloWorld{    public static void main(String[] args){        int num = 999;        for(int count = 1;count<10;count++){            num/=10;            if(num<1){                System.out.println("它是个"+count+"位的数");                break;            }        }    } } 哪里出错了?

提问者:weibo_阿雷demos_0 2018-03-07 10:47

个回答

  • 加油小伙126
    2018-03-09 22:30:07

    我运算出来没错,按你的代码

  • 风之极端
    2018-03-07 16:11:08

    public class Test{
        public static void main(String[] args){
            int num = 45219;
            for(int count = 1;count<10;count++){
                num/=10;
                if(num<1){
                    System.out.println("它是个"+count+"位的数");
                    break;
                }
            }
        }
    }

    我把你的代码直接用,没有发现问题啊

    http://img1.mukewang.com/5a9f9e8d00019c1602290109.jpg

    http://img1.mukewang.com/5a9f9e8d00011fe905810297.jpg


  • 慕桂英1630071
    2018-03-07 12:03:11

    public class HellowWorld{

    public static void main(string[] args){

    int num=999;

    for(int count=1;count<10;count++){

    num/=10;

    if(num<1){

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

    }

    }

    }

    }

  • 要当程序员
    2018-03-07 11:47:17

    你的break事实上只是终止了if的循环,而控制for的循环是count,count一定要自加到10才会终止。在count=3的之后都会满足num<1,所以应该会输出“它是个3位的数、它是个4位的数......、它是个9位的数。