题目1003:A+B
时间限制:1 秒
内存限制:32 兆
特殊判题:否
-
题目描述:
-
给定两个整数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
-
来源:
- 2010年浙江大学计算机及软件工程研究生机试真题
-
- 参考代码:
-
//字符串的处理,注意符号的存储与字符数字的转换 #include<stdio.h> #include<string.h> int str2int(char s[]) { int len = strlen(s); int ans=0, sign=1, i=0; if(s[0] == '-') { //当为负数时,存储负号,从下一位开始计算 sign = -1; i++; } for(; i<len; i++) if(s[i] != ',') //除去逗号 ans = ans*10 + s[i]-'0'; //数字i与数字0的asc码相减即为数字i return ans*sign; //加上原始符号 } int main() { //freopen("in.txt","r",stdin); char s1[11], s2[11]; while(scanf("%s %s",s1,s2)!=EOF) { printf("%d\n",str2int(s1) + str2int(s2)); } return 0; }