pta上一直显示答案错误,但在dev上输出结果是对的

输入一个正整数n,要求输出其位数,并分别以正序和逆序输出各位数字。

输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入一个整数n(int范围内)。

输出格式:
对于每组测试数据,输出n的位数,然后分别以正序和逆序输出各位数字,每两个数据之间用一个逗号“,”分隔。

输入样例:
2
12345
246
输出样例:
5,1,2,3,4,5,5,4,3,2,1
3,2,4,6,6,4,2

#include <stdio.h>
main ()
{
    int t,i,j=1,n,T,c,power=1,l;
    scanf("%d",&T);
    for(l=1;l<=T;l++)
    {
        scanf("%d",&n);
        for(c=1;c>0;c++)
        {
            power=power*10;
            if(n/power==0)
                break;
            else j++;
        }
        power=1;
        printf("%d,",j);
        int a[j+1];
        for(i=1;i<=j;i++)
        {
            for(c=1;c<=i;c++)
                power=power*10;
            a[i]=n%power;
            power=1;
            if(i>1)
            {
                for(c=1;c<=i-1;c++)
                    power*=10;
                a[i]=a[i]/power;
            }
            c=1;
            power=1;
        }
        for(i=j;i>=1;i--)
        {
            printf("%d",a[i]);
            printf(",");
        }
        for(i=1;i<=j;i++)
        {
            if(i!=j)
            {
                printf("%d",a[i]);
                printf(",");
            }
            else printf("%d",a[i]);
        }
        printf("\n");
        j=1;
    }
}