Home11月30日:a+b
阿新 • • 發佈:2018-12-20
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; }