[求助]二维数组判断回文数
用二维数组判断一个数是否是回文数。(正看反看都一样的就是回文数,比如23532,34543这种)下面是我的代码:
#include"stdio.h"
main()
{
long x;
int d[15],n;//n为x的位数,d用来存放每位数
int i,j,flag=1;//flag=1表示判断前假设x是回文数
printf("input x:");
scanf("%lf",&x);
n=0;
do//把x的每位数放到数组中
{
d[n]=x%10;
x=x/10;
n++;
}
while(x!=0);
for(i=0,j=n-1;i<j&&flag;i++,j--)//判断是否为回文数
if(d[i]!=d[j])
flag=0;
if(!flag)
printf("x is not\n");
else
printf("x is yes\n");
}
编译都没错误,但是运不了,比如我输入23532,应该会输出x is yes,但是它直接就中止了,不知何解。
达人帮忙下。3Q先~