A+B
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3629 Accepted Submission(s): 2069
Problem Description
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。
现在请计算A+B的结果,并以正常形式输出。
Input
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。
Output
请计算A+B的结果,并以正常形式输出,每组数据占一行。
Sample Input
-234,567,890 123,456,789 1,234 2,345,678
Sample Output
-111111101 2346912
Source
很水的a+b,做做水题找自信
代码:
#include <stdio.h> #include <string.h> int main() { int len1,len2; long long sum1,sum2; char str1[20],str2[20]; while(scanf("%s %s",str1,str2)!=EOF) { len1=strlen(str1); len2=strlen(str2); if(str1[0]=='-') { sum1=0; for(int i=1;i<len1;i++) { if(str1[i]!=',') sum1=sum1*10+str1[i]-'0'; } sum1=-sum1; } else { sum1=0; for(int i=0;i<len1;i++) { if(str1[i]!=',') sum1=sum1*10+str1[i]-'0'; } } if(str2[0]=='-') { sum2=0; for(int i=1;i<len2;i++) { if(str2[i]!=',') sum2=sum2*10+str2[i]-'0'; } sum2=-sum2; } else { sum2=0; for(int i=0;i<len2;i++) { if(str2[i]!=',') sum2=sum2*10+str2[i]-'0'; } } printf("%lld\n",sum1+sum2); memset(str1,0,sizeof(str1)); memset(str2,0,sizeof(str2)); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-16 16:33:01