PAT Advanced 1001. A+B Format (20) (C语言实现)
2017-05-18 23:47
489 查看
题目
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
思路
两个要点:两数和为0时要输出0;
注意逗号的输出位置,如不要在数字前面和后面有输出
代码
最新代码@github,欢迎交流 ^_^#include <stdio.h> int main() { int a, b, sum, count, dec; scanf("%d%d", &a, &b); sum = a + b; if(sum == 0) putchar('0'); if(sum < 0) { putchar('-'); sum = -sum; } for(count = 0, dec = 1; sum >= dec; count++, dec *= 10) ; for(int c = count; c; c--, sum %= dec) { if(c < count && c % 3 == 0 && c) putchar(','); putchar('0' + sum / (dec /= 10)); } return 0; }
相关文章推荐
- 【PAT】【Advanced Level】1001. A+B Format (20)
- PAT-PAT (Advanced Level) Practise 1001. A+B Format (20) 【二星级】
- PAT Advanced 1005. Spell It Right (20) (C语言实现)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- PAT (Advanced Level) Practise 1001 A+B Format (20)
- 浙大PAT (Advanced Level) Practise 1001 A+B Format (20)
- 【PAT Advanced Level】1001. A+B Format (20)
- PAT(Advanced level) 1001 A+B Format(20)
- PAT (Advanced Level) Practise 1001 A+B Format (20)
- PAT(Advanced Level)1001. A+B Format (20)
- PAT (Advanced Level) Practise - 1001 A+B Format (20)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- PAT-PAT (Advanced Level) Practise 1001. A+B Format (20) 【二星级】
- PAT (Advanced Level) Practise 1001 A+B Format (20)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- PAT (Advanced Level) Practise 1001. A+B Format (20)
- 编程题目:PAT(Advanced Level) Practice 1001. A+B Format (20)
- PAT 1001. A+B Format (20)