C 语言□^□+□□÷□□-□□×□=0

我的代码 哪里出错了?
用JAVA写的运行的都很好?图片说明

    int ch[10];
    int t=0;
    int a=0,b=0,c=0,d=0,e=0,f=0;
    for(a=2; a<=9; a++)
        for(b=2; b<=9; b++)
            for(d=12; d<=49; d++)
                for(c=d; c<=98; c=c+d)
                    for(e=12; e<=98; e++)
                        for(f=2; f<=9; f++)
                        {
                            if(pow(a, b)+c/d!=e*f)
                                continue;

                            t = 0;
                            ch[0] = 0;
                            ch[1] = a;
                            ch[2] = b;
                            ch[3] = f;
                            ch[4] = c % 10;
                            ch[5] = c / 10;
                            ch[6] = d % 10;
                            ch[7] = d / 10;
                            ch[8] = e % 10;
                            ch[9] = e / 10;
                            for (int j = 0; j <= 8; j++)
                            {
                                for (int j2 = j + 1; j2 <= 9; j2++)
                                {
                                    if (ch[j] == ch[j2])
                                    {
                                        t = 1;
                                        break;
                                    }
                                }

                            }


                            if(t==0)
                                printf("%d ,%d ,%d ,%d ,%d ,%d \n ",a,b,c,d,e,f);
                        }


    printf("end");

pow(a, b)
这是浮点数计算,不可靠,可能有误差,应该用for循环自己乘