题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

mac2026-03-10  5

版本一】限制输入位数

/* 【程序25】题目:一个5位数,判断它是不是回文数。 即12321是回文数,个位与万位相同,十位与千位相同。 */ class Test25 { public static void main(String[] args) { int count = 0; System.out.println("5位数中的回文数有:"); for(int i=10000;i<=99999;i++){ int ge = i%10; int shi =i/10%10; int bai = i/100%10; int qian = i/1000%10; int wan = i/10000; if(ge==wan&&shi==qian){ System.out.print(i+" "); count++; //每行输出5个数,进行换行 if(count%5==0){ System.out.println(); } } } } }

版本二】限制输入位数

import java.util.Scanner; class Test25 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num; do{ System.out.println("请输入一个5位的整数:"); num = sc.nextInt(); if(num<10000||num>99999){ System.out.println("您输入的整数不符合要求,请重新输入:"); } }while(num<10000||num>99999); //将int类型的整数转换为字符串 String str = String.valueOf(num); //将字符串转换为字符数组 char[] chs = str.toCharArray(); if(chs[0]==chs[4]&&chs[1]==chs[3]){ System.out.println(num+"是回文数"); }else{ System.out.println(num+"不是回文数"); } } }

版本三】不限制位数

import java.util.Scanner; class Test25 { public static void main(String[] args) { //版本三 Scanner sc = new Scanner(System.in); System.out.println("请输入一个正整数"); long num = sc.nextLong(); boolean flag = true; //将长整型的数字转换为字符串 String str = Long.toString(num); //将字符串转换为字符数组 char[] ch = str.toCharArray(); for(int i=0;i<ch.length;i++){ //判断第i个字符和倒数第i个字符是否相等 if(ch[i]!=ch[ch.length-1-i]){ flag = false; } } if(flag){ System.out.println(num+"是回文数"); }else{ System.out.println(num+"不是回文数"); } } }

 

最新回复(0)