2.编写并运行一个Java应用程序。用户从键盘输入一个1~99999之间的数,程序将判断这个数是几 位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,如12121和3223都是回文数。
时间: 2024-11-06 22:15:49 浏览: 23
在Java中,你可以创建一个名为`PalindromeChecker`的简单程序来完成这个任务。下面是一个示例程序:
```java
import java.util.Scanner;
public class PalindromeChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个1到99999之间的数:");
String input = scanner.nextLine();
int number = Integer.parseInt(input); // 将字符串转换成整数
int digitCount = countDigits(number); // 计算数字位数
boolean isPalindrome = checkPalindrome(number); // 判断是否是回文数
System.out.println("数字有 " + digitCount + " 位。");
System.out.println("这是一个回文数吗?" + (isPalindrome ? "是" : "否"));
}
// 函数用于计算数字的位数
public static int countDigits(int num) {
if (num == 0) return 1; // 单位数
while (num != 0) {
num /= 10; // 右移一位
digitCount++;
}
return digitCount;
}
// 函数用于检查数字是否为回文
public static boolean checkPalindrome(int num) {
int reversedNum = 0, originalNum = num;
while (originalNum != 0) {
int remainder = originalNum % 10;
reversedNum = reversedNum * 10 + remainder;
originalNum /= 10;
}
return reversedNum == num;
}
}
```
当你运行此程序,它会提示用户输入一个1到99999之间的数,然后告诉你是几位数以及是否为回文数。
阅读全文