c语言求回文数输入输出都是一行,是回文数输出yes否则no

#include
#include
#include
int shu(int x)
{
int a,b=0,i=10,h=1;
while(x%i!=x)
{i=i*10;
h++;
}
h=h-1;
while (h>=0)

{
a=x%10;
x=x/10;
b=a*(pow(10,h))+b;

    h--;
}
return b;

}
int main()
{
int a,m;
scanf ("%d",&a);
m=shu(a);
if (a==m)
printf ("yes");
else
printf ("no");
return 0;
}
哪里错了呀


int judge_ReversedNum(int num)
{
    int ge, shi, qian, wan;
    ge = num % 10;
    shi = num / 10 % 10;
    qian = num / 1000 % 10;
    wan = num / 10000;

    if (ge==wan&&shi==qian)
    {
        return 1;
    }
    return 0;
}