java给出一个不多于5位的正整数,要求: 1.求出它是几位数。 2.分别打印出每一位数字。 3.按照逆序打印出每一位数字。
时间: 2024-09-29 19:15:38 浏览: 37
统计整数的二进制表示形式中有几个1(java实现)
在Java中,你可以通过字符串处理和遍历的方式来解决这个问题。下面是一个简单的示例代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入限制在5位内的正整数
System.out.println("请输入一个不超过5位的正整数:");
int num = scanner.nextInt();
if (num < 0 || num >= Math.pow(10, 5)) {
System.out.println("输入错误,数字应为正且不超过5位!");
return;
}
// 计算位数
int digitCount = String.valueOf(num).length();
// 打印每一位数字
System.out.println("原始数字各位数: ");
for (int i = digitCount - 1; i >= 0; i--) {
int digit = num % 10;
System.out.print(digit);
num /= 10;
}
// 按照逆序打印每位数字
System.out.println("\n逆序后的数字各位数: ");
for (int i = 0; i < digitCount; i++) {
int reversedDigit = num % 10;
System.out.print(reversedDigit);
num /= 10;
}
scanner.close();
}
}
```
在这个程序里,首先读取用户输入的整数,然后检查是否满足条件。接着,将数字转换成字符串获取长度得到位数。使用循环分别打印原顺序和逆序的每一位数字。
阅读全文