我想颠倒int
,以便顺序从“第一到最后”更改为“最后到第一”(例如,123
变为321
,100
变为001
,0003
变成3000
等。)
我有以下代码,但是基于它的工作方式,完全跳过该过程之前或之后的任何前导零或尾随零。 (0003
变成3
)
int reverseNumber(int number);
main()
{
int s = 123000000;
printf("%d\n", reverseNumber(s));
}
int reverseNumber(int number) {
int reversedNumber = 0, remainder;
while(number != 0)
{
remainder = number%10;
reversedNumber = reversedNumber*10 + remainder;
number /= 10;
}
return reversedNumber;
}
如何更改代码,使其在不省略零的情况下起作用?
答案 0 :(得分:0)
因为前导零没有值,所以您需要告诉您的函数所提供的值的位数或前导零的数量。
前导零的数目更容易:
ConstraintViolationException