输入两个字符串,从第一个字符串中删除第二个字符串中的所有字符。 例如输入"They are students."和"aeiou",则删除之后的第一个字符串变成"Thy r stdnts."用c语言写代码
时间: 2023-08-07 09:20:56 浏览: 142
去掉重复的字符串及在第一个字符串中删除在第二个字符串中出现的字符
好的,这是一个字符串处理的问题,可以用 C 语言来实现。可以使用两个 for 循环,遍历第一个字符串中的每个字符,如果该字符不在第二个字符串中,则将其添加到一个新的字符串中。最后将新的字符串拷贝到原来的字符串中即可。具体实现可以参考以下代码:
```c
#include <stdio.h>
#include <string.h>
void delete_chars(char *s1, char *s2) {
char new_s[100];
int len1 = strlen(s1);
int len2 = strlen(s2);
int i, j, k = 0;
for (i = 0; i < len1; i++) {
for (j = 0; j < len2; j++) {
if (s1[i] == s2[j]) {
break;
}
}
if (j == len2) {
new_s[k++] = s1[i];
}
}
new_s[k] = '\0';
strcpy(s1, new_s);
}
int main() {
char s1[100], s2[100];
printf("请输入第一个字符串:");
scanf("%s", s1);
printf("请输入第二个字符串:");
scanf("%s", s2);
delete_chars(s1, s2);
printf("删除后的字符串为:%s\n", s1);
return 0;
}
```
该程序中的 `delete_chars` 函数接受两个字符串作为参数,分别表示第一个字符串和第二个字符串,然后遍历第一个字符串中的每个字符,如果该字符不在第二个字符串中,则将其添加到一个新的字符串中。最后将新的字符串拷贝到原来的字符串中即可。
希望能够帮助您。
阅读全文