首先应该判断回文数,其实就是反过来后是否相等;
比如:
453 = 3x100+5x10+4?
125 = 5x100+2x10+1?
即设置一个初始数,让其循环为 新数 = 新数*10 + 个位数 模式
我们知道一个整数求模就是个位数,除以10就是丢掉个位数;
所以回文数判断代码:

int main()
{
    int xinshu = 0;
    int n, i;
    scanf("%d", &n);
    i = n;
    while (i != 0)
    {
        xinshu = xinshu * 10 + i % 10;
        i = i / 10;
    }
    if (xinshu == n)
        printf("%d\n", xinshu);
    xinshu = 0;
    return 0;
}

然后开始循环所有的数字:

{
    int xinshu = 0;
    int n, i, j;
    scanf("%d", &n);
    for (i = 1, j = 1; j <= n; j++)
    {
        i = j;
        while (i != 0)
        {
            xinshu = xinshu * 10 + i % 10;
            i = i / 10;
        }
        if (xinshu == j)
            printf("%d\n", xinshu);
        xinshu = 0;
    }
    return 0;
}