题目描述:
给定两个整数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
-------------------------------------------------------//华丽分割线//-------------------------------------------------------
简单的题
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
long transform(char *a,int len);//将数组转化为整型
int main()
{
char a[12],b[12];
int len1,len2;
long A,B;
while(scanf("%s%s",a,b)!=-1)
{
len1=strlen(a);
len2=strlen(b);
A=transform(a,len1);
B=transform(b,len2);
printf("%ld
",A+B);
}
return 0;
}
long transform(char *a,int len)
{
int sum=0,j=1,i;
for(i=len-1; i>=0; i--)
{
if(a[i]>='0'&&a[i]<='9')
{
sum+=(a[i]-48)*j;
j*=10;
}
}
if(a[0]=='-')
sum=-sum;
return sum;
}
//启示:将字符串转化为整型时借助for循环和if只对数字字符进行判断
//就可以啦,别忘了判断数组的第一个字符是否为'-'号