编写一个Java程序,用户从键盘输入一个1~99999的数,程序将判断这个是几位数,并判断这个是否为回文数。回文数是指该数含有的数字逆序排列得到的数和原数相同。例如12121、3223都是回文数。请将下面模板中的【代码】替换为Java语句并运行。观察结果,并分析理解代码,并掌握相应的编程技巧。 import java.util.Scanner public class Number {
时间: 2023-05-11 14:06:00 浏览: 1295
【代码】
import java.util.Scanner;
public class Number {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个1~99999的数:");
int num = input.nextInt();
int temp = num;
int count = 0;
while (temp > 0) {
temp /= 10;
count++;
}
int[] arr = new int[count];
for (int i = 0; i < count; i++) {
arr[i] = num % 10;
num /= 10;
}
boolean flag = true;
for (int i = 0; i < count / 2; i++) {
if (arr[i] != arr[count - i - 1]) {
flag = false;
break;
}
}
if (flag) {
System.out.println("这是一个回文数");
} else {
System.out.println("这不是一个回文数");
}
}
}
【运行结果】
请输入一个1~99999的数:12321
这是一个回文数
【代码分析】
该程序首先使用Scanner类获取用户输入的数,然后使用while循环计算该数的位数,将每一位数字存储在数组中,最后使用for循环判断该数是否为回文数。其中,flag变量用于标记该数是否为回文数,如果是则输出“这是一个回文数”,否则输出“这不是一个回文数”。
【编程技巧】
1. 使用Scanner类获取用户输入的数据。
2. 使用while循环计算数的位数。
3. 使用数组存储每一位数字。
4. 使用for循环判断该数是否为回文数。
阅读全文