hdu 1002 A + B Problem II

大数相加,这个题我提交了3次才通过,我去,就我这水平,还参加比赛,笑掉别人大牙咯

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;

char str1[1001],str2[1001];
int str3[1001],str4[1001];

int main()
{
   // freopen("in.txt","r",stdin);
    int t,m;
    scanf("%d",&t);
    for (int k=1;k<=t;k++)
    {
        scanf("%s%s",str1,str2);
        printf("Case %d:\n",k);
        printf("%s + %s = ",str1,str2);
        memset(str3,0,sizeof(str3));
        memset(str4,0,sizeof(str4));
        int len=strlen(str1);
        for (int i=0;i<len;i++) str3[i]=str1[len-i-1]-'0';
        len=strlen(str2);
        for (int i=0;i<len;i++) str4[i]=str2[len-i-1]-'0';
        len=max(strlen(str1),strlen(str2));
        for (int i=0;i<len;i++)
        {
            str3[i]+=str4[i];
            m=str3[i]/10;
            str3[i+1]+=m;
            str3[i]=str3[i]%10;
        }
        if(m) len++;
        for (int i=len-1;i>=0;i--) printf("%d",str3[i]);
        printf("\n");
        if (k!=t) printf("\n");
    }
    //fclose(stdin);
    return 0;
}

 

posted @ 2014-04-24 17:16  Hust_BaoJia  阅读(122)  评论(0编辑  收藏  举报
努力