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

4-15编程练习答案错误

if(num>=0&&num<=9999999999){

    do

    {

        count++;

        num/=10;

    }while(num!=0);

    System.out.println(count+"位数");

}else{

    System.out.println("输入有误");

}

给出的答案会把0判断成0位数

提问者:慕粉0956579519 2016-12-06 15:10

个回答

  • 慕粉1433525999
    2016-12-06 17:13:14

    package study;


    import java.util.Scanner;


    public class NumWeiShu {


    public static void main(String[] args) {

    Scanner in = new Scanner(System.in);

    System.out.println("请输入一串小于10位的数字");

    int num = in.nextInt();

    int i = 0;

    do{

    num = num / 10;

    i++;

    if(num == 0){

    System.out.println("您输入的数字是"+i+"位");

    }

    }while(num > 0);

    }

    }


  • 峰不二子
    2016-12-06 16:11:40

    public class HelloWorld
    {
        public static void main(String[] args)
        {
            int num = 0;
            int count =0;
    		if(num>=0&&num<=999999)
    		{
    			do
    			{
    				count=count+1;
    				num=num/10;
    			}while(num!=0);
    			System.out.println(count+"位数");
    		}
    		else
    			System.out.println("输入有误");
    	}
    }

    试试这个代码,并没有太大的改变,只是把

    count++;

                num/= 10;

    变成了count=count+1;

    num=num/10;

  • 慕粉0734078503
    2016-12-06 16:10:14

    最小的一位数是1,所以你可以在前面的if判断中把等于0的情况排除掉,即把小于等于0的等号去掉。

    或者不使用do。。。while,而直接用while, 或者其他办法。

    共同学习。。。

  • 峰不二子
    2016-12-06 16:04:25

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


  • Holding2015
    2016-12-06 16:01:47

    public class HelloWorld{

    public static void main(String[] args){

    int num = 999;

    int count = 0;

        if(num >= 0 && num <=999999999){

            while (num != 0){

                count++;

                num/= 10;

            }

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

        }else{

             System.out.println("请重新输入");

        }