给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

public class 第二十四题打印各位数字 {
    public static void main(String[] args) {
        // 请输入一个5位以内的正整数
        System.out.print("请输入一个5位以内的正整数:");
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        if (n < 0 || n > 1000000) {
            System.out.println("输入有误,请重新输入");
        } else {
            System.out.println("这个数为" + getDigits(n) + "位");
             reversePrint(n);
        }
        in.close();
    }

    // 获取这个数的位数
    public static int getDigits(int n) {
        int count = 0; // 记录位数
        while (n > 0) {
            if (n % 10 != 0) {
                count++;
            }
            n /= 10;
        }
        return count;
    }

    // 逆序打印
    private static void reversePrint(int n) {
        System.out.print("逆序输出: ");
        while (n > 0) {
            if (n % 10 != 0) {
                System.out.print(n % 10 +" ");
            }
            n /= 10;
        }
    }
}
原文地址:https://www.cnblogs.com/zjulanjian/p/10949487.html