题解 | #小乐乐改数字#
小乐乐改数字
https://www.nowcoder.com/practice/fcd30aac9c4f4028b23919a0c649824d
#include <stdio.h>
#include <string.h>
int main() {
char a[20];
int j, k;
scanf("%s", &a); //录入数组
for (j = 0; a[j] != '\0'; j++) { //依照题意改数组
if ((a[j] - '\0') % 2 != 0) {
a[j] = '1';
}
else {
a[j] = '0';
}
}
int len = strlen(a);
if (a[0] == '0') { //分类讨论
for (k = 0; k < len ; k++) {
if (a[k] != '0' ) { //针对1前面全0的情况
printf("%c", a[k]);
}
else if(k != 0 && a[k] == '0' && a[k + 1] != '0' && a[k - 1] != '0') {
//0开头但是0和1交错的情况,遇到0开头但是存在连续0的数组要寄。。。
printf("%c", a[k]);
}
}
}
else {
for (k = 0; k < len ; k++) {
printf("%c", a[k]);
}
}
return 0;
}