题目描述
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。
现在请计算A+B的结果,并以正常形式输出。
输入
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。
输出
请计算A+B的结果,并以正常形式输出,每组数据占一行。
样例输入
-234,567,890 123,456,789 1,234 2,345,678
样例输出
-111111101 2346912
#include <stdio.h>
#include <string.h>
int main()
{
int len1,len2;
long long sum1,sum2;
char a[20],b[20];
while(scanf("%s %s",a,b)!=EOF) //输入两个数
{
sum1=0; //第一个数表示成数值
sum2=0; //第二个数表示成数值
len1=strlen(a);
len2=strlen(b);
for(int i=0; i<len1; i++)
{
if(a[i]>='0'&&a[i]<='9') //如果是数字字符,则计算;否则略过
sum1=sum1*10+a[i]-'0'; //按位乘10
}
if(a[0]=='-') //如果是负数,则表示成负数
sum1=-sum1;
for(int i=0; i<len2; i++)
{
if(b[i]>='0'&&b[i]<='9')
sum2=sum2*10+b[i]-'0';
}
if(b[0]=='-')
sum2=-sum2;
printf("%lld\n",sum1+sum2); //输出两数之和
}
return 0;
}
运行结果: