```c
int i, j, a[99], b, c, d[99], num, m;
i=0, j=0, b=1000;
do
{
m=b;
while(b>0)
{
c=b%10;
a[i]=c;
b=b/10;
i++;
}
c=j=i-1;
i=0;
while(j!=-1)
{
d[j]=a[i];
i++;
j--;
}
while(a[c]==d[c])
{
c--;
}
if (c==-1)
{
printf("%d\n", m);
}
i=0,j=0;
b++;
}while(b<=3000);
}
我发现do循环里的内容是可以正确判断是否为回文数的,但是在if语句之后输出真的回文数阶段就全部输出为1,本大一新生才接触C语言脑袋挠破了都解决不来,救命!