请指出代码问题在哪里,运行结果总是不对,不知道为什么

img

    #include<stdio.h>
    intmain()
         longa,b,C,d,ex
         printf(“请输入不多于五位的正整数:“)
         scanf("1d%”,8x)
         a=x/100003
         b=xX10000/1000
         C=xX1000/100
         d=xX100/10
         e=x%10ifa!=8printf(“为五位数,逆序为:%1d%1d%1d%1d%1d”,e,d,cbaelseif(b!=0)
                   printf(“为四位数,逆序为:%1d%1d%1d%1d"e,d,c,b)
              elseif(c!=0f
                   printf"为三位数,逆序为:%1d%1d1d”,e,d,c)
              elseif(d=②){
                   printf(“为两位数,逆序为:x1d%1d",e,d)
              Telseif(e!=0)
                   printf(“为一位数,逆序为:%1d"e)
              return()j

是 %ld 不是 %1d