代码:
#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<string.h>
#include<math.h>
using namespace std;
int main()
{
int n,x=1;
scanf("%d",&n);
while(n--)
{
char a[1000],b[1000];
int i,a1,b1,r,s[3][1000];
scanf("%s%s",a,b);
a1=strlen(a);
b1=strlen(b);
memset(s,0,sizeof(s));
r=0;
for(i=a1-1; i>=0; i--)
{
s[0][r++]=a[i]-'0';
}
r=0;
for(i=b1-1; i>=0; i--)
{
s[1][r++]=b[i]-'0';
}
int m;
m=max(a1,b1);
for(i=0; i<m; i++)
{
s[2][i]+=s[0][i]+s[1][i];
if(s[2][i]>=10)
{
s[2][i+1]+=1;
s[2][i]=s[2][i]-10;
}
}
printf("Case %d:
",x++);
printf("%s + %s = ",a,b);
if(s[2][m]!=0)
printf("%d",s[2][m]);
for(i=m-1; i>=0; i--)
printf("%d",s[2][i]);
printf("
");
if(n!=0)
printf("
");
}
return 0;
}
//有一点,为什么我在定义s二维数组的时候,单独定义的时候老是编译不了。。。