题目:给一个不多于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; } } }