请教各位大神,如何用C语言判断一个整型的数是否为回文数?
楼主,程序直接给你,够意思吧?
#include
using namespace std;
const int maxN=1000004;
int f[maxN+10];
int judge(int x)
{
char tmp[32];
sprintf(tmp,"%d",x);
int len=strlen(tmp);
for(int i=0;i<len/2;++i)
if(tmp[i]!=tmp[len-1-i])
return 0;
return 1;
}
int main()
{
int a,b;
f[0]=1;
for(int i=1;i<=maxN;++i)
f[i]=f[i-1]+judge(i);
while(scanf("%d%d",&a,&b)==2){
printf("%d\n",f[b]-f[a-1]);
}
return 0;
}
把数字截取成数,按下标比较就可以了
http://blog.163.com/ah..zhangrui/blog/static/539258022009105111759703/
左右判断 是否对称 http://blog.csdn.net/u012605629/article/details/44648377
http://blog.163.com/ah..zhangrui/blog/static/539258022009105111759703/
http://blog.csdn.net/xuelovexiao/article/details/8965679
取每一位的数值,逐个比较。如果接收的时候就接受成字符串就比较方便,直接比较就好了。