CODE:
#include
#include
#include
#include
int main(){
int n;
int a[1000], b[1000];
char a1[1001], b1[1001];
if (scanf("%d", &n) != EOF){
if (n<1 || n>20) return -1;
int tmp = 0;
for (tmp = 1; tmp <= n;tmp++){
if (scanf("%s%s", a1, b1) != EOF){
int a_len = 0, b_len = 0;
a_len = strlen(a1);
b_len = strlen(b1);
int i, j;
for ( i = a_len - 1; i >= 0; i--){
a[a_len - 1 - i] = a1[i] - '0';
}
for (j = b_len - 1; j >= 0; j--){
b[b_len - 1 - j] = b1[j] - '0';
}
int max_len = (a_len > b_len) ? a_len : b_len;
if (a_len > b_len){
int i = 0;
for (i = b_len; i <= max_len; i++){
b[i] = 0;
}
a[a_len] = 0;
}
else
{
int j = 0;
for (j = a_len; j <= max_len; j++){
a[j] = 0;
}
b[b_len] = 0;
}
//求和
int k;
for (k= 0; k <= max_len; k++){
a[k] += b[k];
if (a[k] >= 10){
a[k] -= 10;
a[k + 1] += 1;
}
}
printf("Case %d:\n%s + %s = ", tmp, a1, b1);
if (a[a_len] == 0){
int i = 0;
for (i = a_len - 1; i >= 0; i--)
{
printf("%d", a[i]);
}
}
else{
int i = 0;
for (i = a_len; i >= 0; i--)
{
printf("%d", a[i]);
}
}
}
if (tmp != n)
printf("\n\n");
else
printf("\n");
}
}
return 0;
}