编写一个字符串函数void squeeze(char str1[],char str2[]),该函数将str1字符串中所有在字符串str2中出现的字符删掉,如char s1[20]="THISISABOOK",s2[5]="IS",则调用函数后,s1="THABOOK"。
时间: 2023-12-06 17:41:09 浏览: 101
去掉字符串中的某一字符
以下是squeeze函数的实现代码:
```c
void squeeze(char str1[], char str2[]) {
int i, j, k;
int len1 = strlen(str1);
int len2 = strlen(str2);
for (i = j = 0; i < len1; i++) {
for (k = 0; k < len2; k++) {
if (str1[i] == str2[k]) {
break;
}
}
if (k == len2) {
str1[j++] = str1[i];
}
}
str1[j] = '\0';
}
```
函数中使用了两个循环,第一个循环遍历字符串str1,并准备删除str2中包含的字符。第二个循环遍历字符串str2,检查str1中的字符是否在str2中出现。如果str1[i]等于str2[k],则跳出循环并不将该字符拷贝到新的字符串中。最终结果就是将str1中所有在str2中出现的字符删除。
阅读全文