|
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main(){
char a1[100],b1[100];
int a[100],b[100],c[100],lena, lenb,lenc,x,i;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
gets(a1);
gets(b1);
lena=strlen(a1);
lenb=strlen(b1);
for(i=0;i<=lena-1;i++) a[lena-i]=a1-48;
for(i=0;i<=lenb-1;i++) b[lenb-i]=b1-48;
lenc=1; //这里为什么等于1啊,可不可以等于0.这看不懂
x=0;
while(lenc<=lena || lenc<=lenb) //while循环后边就有点看不懂了。。。有大佬可以解析下吗
{
c[lenc]=a[lenc]+b[lenb]+x; //不应a[0] 加 b[0] 所以难道不应该lenc从0开始?
x=c[lenc]/10;
c[lenc]%10=10;
lenc++;
}
c[lenc]=x;
if(c[lenc]==0)
lenc--;
for(i=lenc;i>=1;i--)
cout<<c;
cout<<endl;
return 0;
}
|
|