Posted on 2008-08-14 09:39
歲月流逝 閱讀(1882)
評論(2) 編輯 收藏 引用
#include <iostream>
using namespace std;
int main()
{
char charA[1000],charB[1000];//用于存放兩個(gè)整數(shù)
int sum[1001];//存放兩個(gè)整數(shù)的和
memset(sum,0,sizeof(sum));//給sum[]賦值
int n,i=1;
cin>>n;
while(n--)
{cin>>charA>>charB;
int sumIndex=0;
int index=0;
//把charA的值賦到sum里
for (index=strlen(charA)-1,sumIndex=1000;index>=0;--index,--sumIndex)
{
sum[sumIndex]+=charA[index]-'0';
}
//把charB的值賦到sum里
for (index=strlen(charB)-1,sumIndex=1000;index>=0;--index,--sumIndex)
{
sum[sumIndex]+=charB[index]-'0';
}
//如果sum元素的值大于9,則進(jìn)位
for (sumIndex=1000;sumIndex>=0;--sumIndex)
{
if (sum[sumIndex]>9)
{
sum[sumIndex-1]+=sum[sumIndex]/10;
sum[sumIndex]%=10;
}
}
//查找結(jié)果放在第幾位
for (sumIndex=0;sumIndex<=1000;++sumIndex)
{
if (sum[sumIndex]!=0)
{
break;
}
}
//如果結(jié)果為0,則輸出最后一位021
if (sumIndex==1001)
{
sumIndex=1000;
}
cout<<"Case "<<i++<<":"<<endl;
cout<<charA<<" + "<<charB<<" = ";
for (;sumIndex<=1000;++sumIndex)
{
cout<<sum[sumIndex];
}
cout<<endl;
}
return 0;
}