c语言||判断回文数的相关问题

img

img


如图,关于回文数的判断,这是我自己写的程序,能够运行但测试错误

你代码想要表达什么我没太看懂,所以改动比较大
可以这样:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int m,i,n,j,k;
    float s=0.0;
    scanf("%d",&m);
    k=m;
    for(i=0;i<9;i++)
    {
        if(k%10!=0){k=k/10;}
        else
        {
            n=i;
            break;
        }
    }
    for(j=1;j<=n;j++)
    {
        k=m%10-1+(n-1)/2+1-abs((n-1)/2+1-j);
        s+=k*pow(10,n-j);
    }
    if(m==(int)s)
        printf("Y");
    else
        printf("N");
    return 0;
}