一、题目:
image.png
二、注意:
- 看清题目说明10^6=1000000,有七位数字
- 取绝对值 abs(int) ,fabs(double)
- 将数字转变为字符串,利用字符串的切割输出
string s = to_string(abs(number)); //完成无符号整数转变为字符串
s.substr(0,3); //从字符串位置0开始的三个字符
s.substr(4); //从字符串位置4开始到结束
- commas:逗号
- input specification: 输入标准
三、解析:
#include <iostream>
#include <string>
using namespace std;
int main()
{
int a,b;
cin >>a >>b;//输入a和b
int sum=a+b;
if(sum<0)
cout <<"-";
string s = to_string(abs(sum)); //进行类型转换,将int型转换为string型
int length = s.length(); //获取字符串的长度
if(sum<1000&&sum>-1000) //sum属于999到-999,长度小于等于3
{
cout <<abs(sum)<<endl;
}
else if((sum<1000000 && sum>=1000)||(sum>-1000000&&sum<=-1000)){ //sum属于1000到999999和-1000到-999999长度大于3
int i = length-3;//获取多余长度字符
cout <<s.substr(0,i)<<","<<s.substr(i)<<endl; //输出
}
else{
int j = length-6;
cout <<s.substr(0,j)<<","<<s.substr(j,3)<<","<<s.substr(j+3)<<endl;
}
return 0;
}