鱼C论坛

 找回密码
 立即注册
查看: 1725|回复: 0

[技术交流] 位数不一定相同且有进位的高精度数加法

[复制链接]
发表于 2020-3-3 18:32:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
弱鸡打卡
#include <iostream>  
#include <cstring>  
#include <string>  
#include <cstdio>  
#include <iomanip>  
#include <algorithm>  
using namespace std;  
int main(){   
    char a[1001]={},b[2002]={};  
    int a1[1001]={},b1[2002]={},c[1001]={},d[201]={};  
    cin>>a>>b;                       
    int lena=strlen(a);              
    int lenb=strlen(b);              
    int len=lena>lenb?lena:lenb;       
    for(int i=0;i<lena;i++){           
        a1[i]=a[lena-1-i]-'0';  
    }   
    for(int i=0;i<lenb;i++){   
        b1[i]=b[lenb-1-i]-'0';  
    }    
    int lenc=0,x=0;  
    while(lenc<len){   
        c[lenc]=a1[lenc]+b1[lenc]+x;  
        x=c[lenc]/10;  
        c[lenc]%=10;      
        lenc++;  
    }   
    if(x>0){    
        c[lenc]=x;  
    }else{      
        lenc--;  
    }           
    for(int i=lenc;i>=0;i--){           
        cout<<c[i];  
    }           
    return 0;  
}      
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 23:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表