int num;
tmp=tmp*10+num%10;
num/=10;
for(num>0)
对当前num第一次求余,并把当前值*10+下一次的余数
int tmp=num%10
num/=10;
tmp=tmp*10+num%10;
例子
链接:https://www.nowcoder.com/questionTerminal/bc62febdd1034a73a62224affe8bddf2
来源:牛客网
用好C++11,也很方便。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include <string>
#include <iostream>
#include <algorithm>
#include <cstdlib>
using
namespace
std;
int
main() {
string s1, s2;
cin >> s1 >> s2;
reverse(s1.begin(), s1.end());
reverse(s2.begin(), s2.end());
int
n =
atoi
(s1.c_str()) +
atoi
(s2.c_str());
s1 = to_string(n);
reverse(s1.begin(), s1.end());
cout <<
atoi
(s1.c_str());
return
0;
}
|
来源:牛客网
#include<iostream>
using namespace std;
int rev(int m)
{
int t=0;
while(m>0)
{
t=t*10+m%10;
m=m/10;
}
return t;
}
int main()
{
int x,y;
while(cin>>x>>y)
{
cout<<rev(rev(x) + rev(y))<<endl;
}
return 0;
}