题目描述:
将两个数字求和,并将和以标准形式输出(从最小一位开始,每三位一个逗号隔开)。
解题思路:
两个数字的范围都在C++中的int范围内,因此不必考虑超限的问题。用string或者vector一类的集合将和的每一个数字保存起来,每隔三位输出一个逗号就好了。
注意要点:
1.和小于四位数时不要输出逗号。
2.两数字和为零的情况。
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
int sum=a+b;
if(sum<0)
cout<<"-";
int temp=abs(sum);
if(temp<1000)
cout<<temp<<endl;
else
{
int flag=0;
string s;
while(temp!=0)
{
if(3==flag)
{
s.insert(s.begin(),',');
flag=0;
}
s.insert(s.begin(),temp%10+'0');
++flag;
temp/=10;
}
cout<<s<<endl;
}
return 0;
}