Codeup墓地—问题 B: A+B

题目描述

给定两个整数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;
}

运行结果:

发布了462 篇原创文章 · 获赞 55 · 访问量 32万+

猜你喜欢

转载自blog.csdn.net/LY_624/article/details/88767345
今日推荐