【发布时间】:2020-03-14 09:57:01
【问题描述】:
我有一个练习,我需要创建一个函数来获取两个参数,数字(long)和数字(int),我必须从数字中删除数字并返回它。
当我做练习时,我将数字反转,最后我再次反转它以获得原始数字。
我想知道是否有一种方法可以在不将数字颠倒两次的情况下进行练习。
long myFunction(long number, int digit){
int tmp = 0;
if (digit <= 9 && digit >= 0){
while (number != 0){
if (number % 10 != digit){
tmp = (tmp + (number % 10)) * 10;
}
number = number / 10;
}
tmp = tmp / 10;
int rev = 0, remainder;
while (tmp != 0) { // Reverse an Integer
remainder = tmp % 10;
rev = rev * 10 + remainder;
tmp /= 10;
}
return rev;
}
return number;
}
【问题讨论】: