问题标题: 酷町堂:1096 a+b

0
0

0
已采纳
高见宸
高见宸
初级光能
初级光能

//加头文件#include <string>#include <string.h>

//函数:

int ab(int a[],int b[],int sa,int sb){

int i,size;

    if(sa>sb)

        size=sa;

    else size=sb;

    for(int i=0;i<size;i++){

        a[i]=a[i]+b[i];

        if(a[i]>=10){

            a[i+1]++;

            a[i]%=10;

        }

    }

    if(a[size]!=0)

    size++;

    return size;

}

//主函数

int main(int argc, const char * argv[]) {

string a1,b1;

int sa,sb,i,n,a[109],b[109];

    cin>>n;

    for(int i=1;i<=n;i++){

        cin>>a1>>b1;

    sa=(int)a1.size();

    sb=(int)b1.size();

memset(a, 0, sizeof(a));

memset(b, 0, sizeof(b));

    for(int i=0;i<sa;i++){

        a[sa-i-1]=a1[i]-48;

    }

    for(int i=0;i<sb;i++){

        b[sb-i-1]=b1[i]-48;

    }

    sa=ab(a,b,sa,sb);

    for(int i=0;i<sa;i++){

        cout<<a[sa-i-1];

    }

    cout<<endl;

    }

    return 0;

}

我要回答