Home11月30日:a+b

Description

Calculate A + B.

Input

Each line will contain two integers A and B. Process to end of file. (EOF)

Output

For each case, output A + B in one line.

Sample Input 1

2 3
4 5

Sample Output 1

5
9

毛学姐提供的代码

#include <stdio.h>
#include <string.h>

void rev(char str[], int len)
{
    char t;
    for(int i = 0; i < len / 2; ++i){
        t = str[i];
        str[i] = str[len - i - 1];
        str[len - i - 1] = t;
    }
}
int main()
{
    char a[1000],b[1000],c[1000];
    int ai, bi, val, carry;
    int len, len1, len2;
    scanf("%s %s", a, b);
    len1 = strlen(a);
    len2 = strlen(b);
    len = len1 > len2 ? len1 : len2;
    rev(a,len1);
    rev(b,len2);
    carry = 0;
    for(int i = 0; i < len; ++i){
        ai = i < len1 ? a[i] - '0' : 0;
        bi = i < len2 ? b[i] - '0' : 0;
        val = (ai + bi + carry) % 10;
        carry = (ai + bi + carry) /10;
        c[i] = val + '0';
    }
    if(carry == 1) putchar('1');
    for(int i = len - 1; i >=0 ; --i)
        putchar(c[i]);
    puts("");

    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_43772166/article/details/84780998
今日推荐