编辑代码

#include <stdlib.h>
#include <stdio.h>
//枚举法
int main()
{
    int x,B1,A2,C,B4,A5,D,D0;//定义五位数的每位A5B4CB2A1和六位数D
    int D1,D2;
    int i;
    for(x=30000;x<=99999;x++)//从30000开始遍历五位数,因为从30000开始乘以五位数的最高位A5才有可能得到六位数
    {
        B1=x%10;//拆五位数的每一位
        A2=(x/10)%10;
        B4=(x/1000)%10;
        A5=x/10000;
        if(B1==B4 && A2==A5)
        {
            D=x*A5;
            D0=D;
            D1=D0%10;
            for(i=0;i<5;i++)
            {
                D2=D1;
                D0=D0/10;
                D1=D0%10;
                if(D1!=D2) 
                    break;
            }
            if(i==5)
                printf("%d--%d\n",x,D);//输出被乘的五位数和结果的六位数
        }
    }
}