替换任意长度字符串中的两个字符为指定的一个字符,不知道写的对不对,就没有做太多异常判断,当做个记录吧,这里可以高亮语法,方便查看一些,这里举例只使用大写字符,如果要能处理大小写使用ctype.h
做个判断就好。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| #include<stdio.h> #include<string.h> #define MAX 1000 char * replace(char * result,char const * source); int main(void) { char input[MAX]; char output[MAX]; printf("Enter your strings(empty line to quit!):\n"); while (fgets(input,MAX - 1,stdin) != NULL && input[0] != '\n') { printf("Your string: %s\n",input); printf("Replace str: %s\n",replace(output,input)); printf("Enter your strings(empty line to quit!):\n"); } return 0; } char * replace(char * result,char const * source) { char * temp = result; while (*source != '\0') { *(result++) = *(source++); if (*source == 'B' && *(source - 1) == 'A') { *(result - 1) = 'C'; source++; } } *result = '\0'; return temp; }
|