帮忙看看下面的代码!!!
我是想输出一个整数的逆序数,结果都是0,怎么回事呢?
#include<iostream>
#include<cmath>
using namespace std;
void reverse ( int );
int main()
{
int number;
cout << "Enter one integer number : ";
cin >> number;
cout << reverse ( number ) << endl;
return 0;
}
int reverse ( int number )
{
int number1;
int n = 0;
int reversenumber = 0;
double m = 10;
for ( int i = 10; ; )
{
n++;
number = number / i;
if ( number == 0 )
break;
}
for ( int k = n; k > 0; k-- )
{
number1 = number % 10;
number = number / 10;
reversenumber = reversenumber + number1 * pow ( m, k-1 ) ;
}
cout << reversenumber;
}
[解决办法]
int i = 0;
while(number>0)
{
number1 = number % 10;
number = number / 10;
reversenumber = reversenumber*10 + number1;
i++;
}
int reverse ( int number )
{
int reversenum = 0;
while(number!=0)
{
reversenum = reversenum*10 + number%10;
number /= 10;
}
return reversenum;
}