PAT 1001. A+B Format (20) c++版
来源:互联网 发布:banner设计软件 编辑:程序博客网 时间:2024/06/11 22:34
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).
InputEach 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
题目的意思:给出两个数(-1000000到1000000之间),求它们的和,并按照隔3个输出一个逗号的形式输出。
思路:根据题目意思求出两个数的和,flag来标记正负,将数从个位往前按位转换为char类型的数组,并且每隔三位加入一个逗号。
注意:数字的位数正好是3的整数倍时,第一位上会多出一个逗号。
#include <bits/stdc++.h>using namespace std;int main() {int a, b;cin >> a >> b;int c = a + b;char num[15];int index = 0, time = 0;int flag = 1;if (c < 0) {//如果和是负数,flag记录下,并将它取反flag = 0;c = -c;} else if (c == 0) {//和为0的情况,直接输出并返回cout << "0" << endl;return 0;}while (c > 0) {//index表示要插入的char类型数组的位置num[index++] = '0' + (char)(c % 10);//time用来记录数字的个数time++;c /= 10;//每隔3个数字就加入一个逗号if (time % 3 == 0) num[index++] = ',';}//3个数字加1个逗号,一共4位,index如果是4的整数倍,说明第一位上多了一个逗号if (index % 4 == 0) index--;if (!flag) cout << '-';for (int i = index - 1; i >= 0; i--)cout << num[i];cout << endl;return 0;}
阅读全文
1 0
- PAT 1001. A+B Format C语言
- 【c++】PAT (Advanced Level) 1001. A+B Format (20)
- 【PAT甲级】【C】1001. A+B Format (20)
- PAT Advanced 1001. A+B Format (20) (C语言实现)
- PAT A 1001. A+B Format (20)
- PAT-A-1001. A+B Format (20)
- PAT A 1001. A+B Format (20)
- PAT-A 1001. A+B Format (20)
- PAT-A 1001. A+B Format (20)
- Pat(A) 1001. A+B Format (20)
- PAT-A 1001. A+B Format (20)
- 【PAT】1001. A+B Format (20)
- PAT:1001. A+B Format (20)
- ( PAT )1001. A+B Format (20)
- PAT 1001. A+B Format (20)
- [PAT]1001. A+B Format (20)
- PAT 1001. A+B Format (20)
- PAT 1001. A+B Format (20)
- 日常学习
- 数据结构——基本常识
- Redis解析之Redis命令
- 快速清除IE缓存命令行
- VS2010——MFC编写线程的进度条
- PAT 1001. A+B Format (20) c++版
- MFC中采用分段线性对比度处理图像并且显示在控件中
- Hadoop 工程所需要的jar包
- Ubuntu16.04 安装skimage
- ubuntu16.04远程服务器安装mysql
- 限时秒杀倒计时案例
- Ubuntu下不启动图形界面运行matlab
- CSS 选择符有哪些?哪些样式可以继承?优先级算法如何计算? CSS3新增伪类有那些?
- linux定时任务的设置