-
题目描述:
-
给定两个整数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
-
<span style="font-family:Courier New;">/*------------------------1003---------------------- description:给定两个整数A和B,其表示形式是: 从个位开始,每三位数用逗号","隔开。 现在请计算A+B的结果,并以正常形式输出。 author :yuanwei time :2013-02-12 --------------------------1002----------------------*/ #include <stdio.h> #include <string.h> #define bool int #define false 0 #define true 1 long getNum(char *str) { int i = 0; long num = 0; bool flag = false; for (i = 0; 0 != *(str+i); i++) { if (('0'<=*(str+i)) && ('9'>=*(str+i))) { num = 10*num + *(str+i) - '0'; } else if (',' == *(str+i)) { continue; } else if ('-' == *(str+i)) { flag = true; } else { return 0; } } if (flag) { return -num; } return num; } int main() { char a[15]; char b[15]; long num1 = 0; long num2 = 0; while (EOF != scanf("%s%s", a, b)) { num1 = getNum(a); num2 = getNum(b); if ((10E9<=num1) || (-10E9>=num1)) { continue; } if ((10E9<=num2) || (-10E9>=num2)) { continue; } printf("%ld\n", num1+num2); } return 0; } /************************************************************** Problem: 1003 User: ruoshui1314 Language: C Result: Accepted Time:0 ms Memory:912 kb ****************************************************************/</span>