大数运算


#include <stdio.h>
#include <string.h>
char a[1000],b[1000];int c[1005];
int main ()
{
    int t,m,n;
    scanf( "%d" , &t);
    for ( int i = 1; i <= t; ++i)
    {
        scanf( "%s%s" ,a ,b );
        printf( "Case %d:\n", i);
        printf( "%s + %s = " ,a ,b );
        n=strlen(a)-1;
        m=strlen(b)-1;
        int p = 0, k;
        for (  k=0 ; n >= 0 || m>=0 ;k++ ,n-- ,m--)
        {
            if( n >= 0 && m>= 0 )
                c[k]=a[n] - '0' + b[m] - '0'+p;
            if( n >= 0 && m < 0 )
                c[k]=a[n]-'0'+p ;
            if ( n < 0 && m >= 0 )
                c[k]=b[m]-'0'+p ;
            p=0;
            if(c[k]>9)
            {
                c[k]=c[k]-10;
                p=1;
            }
        }
        if(p==1)
            printf("%d",p);
        while(k--)
            printf( "%d" , c[k]);
        if( i<t )
            {printf("\n\n");}
        else
            {printf("\n");}
    }
    return 0;
}

 

 

 

posted @ 2014-11-23 21:38  lonelysky  阅读(117)  评论(0编辑  收藏  举报