import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int sum; for(int i = 1; i <= n; i++){ sum = 0; int num1 = i; while(true){ int dig_1 = num1 % 10; num1 /= 10; sum = sum * 10 + dig_1; if(num1 == 0){ break; } } if(sum == i){ System.out.println(i); } } } }先写一个循环,拿取从1到n的数字,再取这个数字的每一位,如果先去的是个位,那就令sum = sum * 10 + dig_1,从后往前,这就得到逆序后的数字,在将两个数字比较,就可以判断,比较完后,sum要重新赋值为0。