题解 | #表示数字#
表示数字
https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6
#include <stdio.h> #include <string.h> //插入函数 void add(char* str, char ch, int pos) { int len = strlen(str); len = len > pos ? len : pos; memmove(str + pos + 1, str + pos, len - pos + 1); str[pos] = ch; } int main() { char str[100]; char ch = '*'; scanf("%s", str); for (int i = 0; i < strlen(str); i++) { if ((str[i] >= '0' && str[i] <= '9')) { if (i == 0) { add(str, ch, 0); i++; } else if (!(str[i - 1] >= '0' && str[i - 1] <= '9')) { add(str, ch, i); i++; } } } for (int i = 0; i < strlen(str); i++) { if ((str[i] >= '0' && str[i] <= '9')) { if (!(str[i + 1] >= '0' && str[i + 1] <= '9')) { add(str, ch, i + 1); i++; } } } printf("%s", str); return 0; }