原 题:
输入两个正整数,求它们的和。
算法分析:
竖式方法,分别用一个数组存储补加数,一个数组存储加数,一个数组存储结果。
代 码:
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int a[301],b[301],c[301]; int main() {string s,js; int lena,lenb,lenc,x; cin>>s; cin>>js; lena=s.length(); lenb=js.length(); for (int i=1;i<=lena;++i) a[i]=s[lena-i]-'0'; for (int j=1;j<=lenb;++j) b[j]=js[lenb-j]-'0'; lenc=1; x=0; while(lenc<=lena||lenc<=lenb) {c[lenc]=a[lenc]+b[lenc]+x; x=c[lenc]/10; c[lenc]=c[lenc]; lenc++; } c[lenc]=x; if(c[lenc]==0)lenc--; for (int j=lenc;j>=1;j--) cout<<c[j]; return 0; }
转载请注明原文地址: https://ju.6miu.com/read-674619.html