输入两个字符串,从第一个字符串中删除第二个字符串中的所有字符。 例如输入"They are students."和"aeiou",则删除之后的第一个字符串变成"Thy r stdnts."用c语言写代码
时间: 2023-08-07 19:20:55 浏览: 92
好的,下面是用 C 语言实现的代码:
```c
#include <stdio.h>
#include <string.h>
void delete_chars(char *s1, char *s2) {
int i, j, k;
int len1 = strlen(s1);
int len2 = strlen(s2);
for (i = 0; i < len1; i++) {
for (j = 0; j < len2; j++) {
if (s1[i] == s2[j]) {
for (k = i; k < len1; k++) {
s1[k] = s1[k + 1];
}
len1--;
i--;
break;
}
}
}
}
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` 函数接受两个字符串作为参数,分别表示第一个字符串和第二个字符串,然后遍历第一个字符串中的每个字符,如果该字符也出现在第二个字符串中,则将该字符删除。具体实现是将该字符后面的所有字符往前移动一个位置,然后将字符串长度减 1。
希望能够帮助您。
阅读全文