开发者社区> 问答> 正文

如何将两个字符数组里的数字相加得出两组数的和

已解决

char a[1000],b[1000]
两个数组里都是数字

展开
收起
WM云建站 2016-02-17 22:56:03 2444 0
1 条回答
写回答
取消 提交回答
  • 阿里云论坛版主,QQ 1978638808
    采纳回答
    void Add(char a[],char b[],char d[])
    {
        char c[10001];
        int lena=strlen(a),lenb=strlen(b);
        int i,j,len;
        len=lena>lenb?lena:lenb;
        len++;
        c[0]='\0';
        for(i=1;i<=len;i++)c[i]='0';
        for(i=1;i<=lena;i++)c[i]+=a[lena-i]-48;
        for(i=1;i<=lenb;i++)c[i]+=b[lenb-i]-48;
        for(i=0;i<=len;i++)
            if(c[i]>57)
        {
                c[i]-=10;
                c[i+1]++;
            }
    
        for(i=len;i>1;i--)
            if(c[i]==48)len--;
            else break;
         for(i=0;i<=len;i++)
            d[i]=c[len-i];
    }
    
    char c[120];
    Add(a,b,c);
    printf("%s", c);
    2019-07-17 18:29:21
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载