给个题目链接:http://hero.pongo.cn/
给个用字符串流做整数取反的代码:
#include <iostream>
#include <cmath>
#include <string>
#include <sstream>
#include <cctype>
using namespace std;
int reverse(int x){
string tmp;
int ans;
stringstream ss;
ss<<x;
ss>>tmp;
string tmp1(tmp.size(),' ');
for(int i=tmp.size()-1,j=0;i>=0;i--,j++)tmp1[j]=tmp[i];
if(tmp1[tmp1.size()-1]=='-'){
tmp1.resize(tmp1.size()-1);
ss.clear();
ss<<tmp1;
ss>>ans;
ans=-ans;
return ans;
}
else {
ss.clear();
ss<<tmp1;
ss>>ans;
return ans;
}
ss.clear();
}
int main()
{
int x=123,y=-123;
cout<<reverse(x)<<endl;
cout<<reverse(y)<<endl;
return 0;
}