A+B Problem(V)

时间限制: 1000 ms  |  内存限制: 65535 KB

难度: 1

描述

做了A+B Problem之后,Yougth感觉太简单了,于是他想让你求出两个数反转后相加的值。帮帮他吧

输入

有多组测试数据。每组包括两个数m和n,数据保证int范围,当m和n同时为0是表示输入结束。

输出

输出反转后相加的结果。

样例输入

1234 1234
125 117
0 0

样例输出

8642
1232



# include<stdio.h>
# include<string.h>
# include<stdlib.h>
int main()
{
int m,n,i,j,m1[30],n1[30],m2,n2,sum;
while(scanf("%d %d",&m,&n) && m!=0 || n!=0)
{
memset(m1,0,sizeof(m1));
memset(n1,0,sizeof(n1));
i = 0;
while(m)
{
m1[i++] = m%10;
m/=10;
}
i = 0;
while(n)
{
n1[i++] = n%10;
n/=10;
}
m2 = 0;
n2 = 0;

for(i=29;i>=0;i--)
if(m1[i]!=0)
break;
for(j=0;j<=i;j++)
m2 = m2*10 + m1[j];
for(i=29;i>=0;i--)
if(n1[i]!=0)
break;
for(j=0;j<=i;j++)
n2 = n2*10 + n1[j];
sum = n2 + m2;
printf("%d\n",sum);
}

return 0;
}