1001 A+B Format (20)
Calculate a + b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).
Input
Each input file contains one test case. Each case contains a pair of integers a and b where -1000000 <= a, b <= 1000000. The numbers are separated by a space.
Output
For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.
Sample Input
-1000000 9
Sample Output
-999,991
解题思路:
1.将输入数字相加,按千位分节。为0时特判输出,负时先输出负号再转为正值。
2.直接根据数据大小判断所需输出的位数,要注意保留三位有效数字,否则像1000和0这样的输入会变成1,0.
#include<cstdio>
int main(){
int a,b,c;
scanf("%d%d",&a,&b);
c=a+b;
if(c==0) {
printf("0");
return 0;
}
if(c<0){
printf("-");
c=-c;
}
if(c<1000) printf("%d",c);
else if(c<1000000){
printf("%d,%03d",c/1000,c%1000);
}
else{
printf("%d,%03d,%03d",c/1000000,(c%1000000)/1000,c%1000);
}
return 0;
}