1001 A+B Format (20 point(s))

1001 A+B Format (20 point(s))

题意:

求a+b的和,但是要按指定格式输出。

控制格式的方法是:将计算出的和转化为string来存储,并且获取其长度,从后往前依次插入',',注意如果结果是负数则终止条件要提前1个

本题学习的技巧有:

1.利用C++11的函数to_string, 将int转string:(例如将a + b的结果转换为 string s):

string s = to_string(a + b)

2.向string中插入字符串的方法:

s.insert(pos, str),pos是待插入的位置, str是待插入的字符串

AC代码:

 1 #include <cstdio>
 2 #include <iostream>
 3 #include <algorithm>
 4 #include <string>
 5 using namespace std;
 6 int main() {
 7     int a, b, c;
 8     string s;
 9     scanf("%d%d", &a, &b);
10     c = a + b;
11     s = to_string(c); // C++11特性
12     int n = s.size();
13     int temp = 0;
14     if (c < 0) temp = 1;
15     for (int i = n - 3; i > temp; i -= 3) {
16         s.insert(i, ",");
17     }
18     cout << s << endl;
19     return 0;
20 }

 

posted @ 2019-05-03 21:10  Shiko  阅读(272)  评论(0)    收藏  举报