#include<iostream>
using namespace std;
void IMAPlusB( char a[], char b[])
{
int i,j,temp;
int index;
char tmp;
int s=0;
char sum[1000]={'0'};
for (i=strlen(a)-1,j=strlen(b)-1;j>=0||i>=0;j--,i--)
{
if (i>=0&&j>=0)
{
temp=(a[i]-'0')+(b[j]-'0');
}
else if (i>=0&&j<0)
{
temp=a[i]-'0';
}
else
temp=b[j]-'0';
if (sum[s]==0)
{
sum[s]='0';
}
/*if (sum[s+1]==0)
{
sum[s+1]='0';
}*/
tmp=sum[s];
sum[s]=(tmp-'0'+temp)%10+'0';
sum[s+1]=(tmp-'0'+temp)/10+'0';
s++;
}
if (sum[strlen(sum)-1]!='0')
{
index=strlen(sum)-1;
}
else
index=strlen(sum)-2;
for (index;index>=0;index--)
{
cout<<sum[index];
}
cout<<endl;
}
int main()
{
int casenumb;
char a[20][1000],b[20][1000];
cin>>casenumb;
for (int i=1;i<=casenumb;i++)
{
cin>>a[i-1]>>b[i-1];
}
for (int i=1; i<=casenumb;i++)
{
cout<<"Case "<<i<<":"<<endl;
cout<<a[i-1]<<" + "<<b[i-1]<<" = ";
IMAPlusB(a[i-1],b[i-1]);
if (i<casenumb)
{
cout<<endl;
}
}
system("pause");
return 0;
}
杭电ACM 1002
最新推荐文章于 2017-01-11 16:45:09 发布