题解 | #小乐乐改数字#
小乐乐改数字
https://www.nowcoder.com/practice/fcd30aac9c4f4028b23919a0c649824d
#include <stdio.h>
#include <math.h>
int main() {
int num,i=0,result=0;
scanf("%d",&num);
while(num!=0)
{
if(num%10%2!=0) //判断最低位是否为奇数,如果是,则加上10^i,i为位权
result+=pow(10,i);
num/=10;
i++;
}
printf("%d",result);
}
逐位判断是否为奇数,是奇数就加上1*10^i,i为位权
可以手动模拟对123的处理过程:
初始,num=123,result = 0,i=0
第一轮结束后,num = 12,result = 1, i=1
第二轮结束后,num = 1,result = 1,i=2
第三轮结束后,num = 0, result = 101, i=3


查看10道真题和解析