原题目如下:
我的代码如下,题目很简单,考虑各种情况周全点就可以了
//输入任意两个整数,输出为标准格式如231000+322000=553,000
#include <iostream>
#include <cmath>
using namespace std;
class add
{
private:
int a,b;
public:
add(int,int);
void out(void);
};
add::add(int temp1,int temp2)
{
a=temp1;
b=temp2;
}
void add::out()
{
int c=a+b;
int sum=abs(c);
int million=sum/1000000;
int thousand=(sum-1000000*million)/1000;
int hundred=sum-1000000*million-1000*thousand;
if(c<0)
cout<<'-';
if(million)
{
cout<<million<<',';
if(thousand)
{
if(thousand<100&&thousand>9)
cout<<'0'<<thousand<<',';
else if(thousand<10)
cout<<"00"<<thousand<<',';
else
cout<<thousand<<',';
}
else
cout<<"000,";
if(hundred)
{
if(hundred<100&&hundred>9)
cout<<'0'<<hundred;
else if(hundred<10)
cout<<"00"<<hundred;
else
cout<<hundred;
}
else
cout<<"000";
}
else
{
if(thousand)
{
cout<<thousand<<',';
if(hundred)
{
if(hundred<100&&hundred>9)
cout<<'0'<<hundred;
else if(hundred<10)
cout<<"00"<<hundred;
else
cout<<hundred;
}
}
else
cout<<hundred;
}
}
int main()
{
int temp1,temp2;
cin>>temp1>>temp2;
add *p=new add(temp1,temp2);
p->out();
delete p;
return 0;
}