杭电OJ1002, 求A+B

我这个题目是杭电OJ上的pb1002,具体问题如下:

img

然后下面是我的c语言代码:

#include
#include
int main(){
//    #define test
//    #ifdef test
//    freopen("pb1002.in", "r", stdin);
//    freopen("pb1002.out", "w", stdout);
//    #endif
    char a[1001], b[1001];
    int x[1001]={0}, y[1001]={0}, z[1001]={0};
    int k=0, n, i, len1, len2, maxlen;
    scanf("%d", &n);
    while(k++"%s %s", &a, &b);
        len1=strlen(a);
        len2=strlen(b);
        for(i=0; ix[i]=a[len1-1-i]-'0';
        for(i=0; iy[i]=b[len2-1-i]-'0';
        maxlen=(len1>len2)?len1:len2;
        for(i=0; ix[i]+y[i];
        for(i=0; iif (z[i]/10) {
                z[i]=z[i]%10;
                z[i+1]++;
            }
        }
        printf("Case %d:\n", k);
        printf("%s + %s = ", a, b);
        if (z[maxlen]) printf("%d", z[maxlen]);
        for(i=maxlen-1; i>=0; i--){
            printf("%d", z[i]);
        }
        if (k!=n) printf("\n\n");
    }
    return 0;
}

提交后显示我的是WRONG ANSWER, 希望有人能帮我看看哪里的问题,感谢感谢

老掉牙的算法用了5个数组,新算法用2个数组即可,而且数组每单元可动态存储不同位数从1位到安全的8位或18位,扩展后的万位数组可以运算倍数位,按每单元5位运算结果.设计加法应注意连续进位处理.设计减法应该注意连续借位处理.

img


img

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^