题目:从控制台输入一个数字。想把每位的数变成0或1。具体来讲,如果该数的某一位是奇数,就把它变成1,如果是偶数,那么就把它变成0。
#include <stdio.h>
long long replaceDigits(long long num) {
long long result = 0;
long long factor = 1;
while (num != 0) {
int digit = num % 10;
int replacement = (digit % 2 == 0) ? 0 : 1;
result += replacement * factor;
num /= 10;
factor *= 10;
}
long long reversedResult = 0;
while (result != 0) {
int digit = result % 10;
reversedResult = reversedResult * 10 + digit;
result /= 10;
}
return reversedResult;
}
int main() {
long long num;
printf("请输入一个数: ");
scanf_s("%lld", &num);
long long result = replaceDigits(num);
printf("处理后的数为: %lld\n", result);
return 0;
}