题目描述
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。
现在请计算A+B的结果,并以正常形式输出。
输入
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。
输出
请计算A+B的结果,并以正常形式输出,每组数据占一行。
样例输入 Copy
-234,567,890 123,456,789
1,234 2,345,678
样例输出 Copy
-111111101
2346912
-
题意
每一行两个字符串,返回两字符串的代数和 -
思路
利用循环数组将字符串转换为数字a=a*10+str1[i]-'0';
-
代码
#include<iostream> #include<string.h> using namespace std; int main(){ int i; long long a,b; char str1[20],str2[20]; //整数AB while(cin>>str1>>str2){ a=b=0; for(i=0;i<strlen(str1);i++){ if(str1[i]>='0'&&str1[i]<='9'){ //将每一位数字字符转为十进制 a=a*10+str1[i]-'0'; //每有一位数,每循环一次扩大十倍,再末尾加上个位数,字符转为数字 -'0' } } if(str1[0]=='-') a=-a; //根据第一位判断是否为负数 for(i=0;i<strlen(str2);i++){ if(str2[i]>='0'&&str2[i]<='9') b=b*10+str2[i]-'0'; } if(str2[0]=='-') b=-b; cout<<a+b<<endl; } return 0; }