用c语言现有两个字符串s1和s2,它们最多都只能包含255个字符。编写程序,将字符串s1中所有出现在字符串s2中的字符删去,然后输出s1。
时间: 2024-05-01 08:17:28 浏览: 173
好的,这是一个关于C语言编程的问题。以下是程序实现:
```
#include <stdio.h>
#include <string.h>
int main() {
char s1[256], s2[256];
int i, j, k;
printf("请先输入字符串s1:\n");
scanf("%s", s1);
printf("接下来请再输入字符串s2:\n");
scanf("%s", s2);
for (i = 0; i < strlen(s2); i++) {
for (j = 0; j < strlen(s1); j++) {
if (s1[j] == s2[i]) {
for (k = j; k < strlen(s1); k++) {
s1[k] = s1[k + 1];
}
j--;
}
}
}
printf("最终的s1字符串为:%s\n", s1);
return 0;
}
```
程序实现的思路是:首先让用户输入字符串s1和字符串s2,然后遍历字符串s2中的所有字符,再在字符串s1中遍历所有字符。如果发现字符在两个字符串中都存在,就把字符串s1中这个字符删除,并将删除后的位置依次往前移动。最后输出删除后的字符串s1。
注意,该程序假设用户输入的都是只有小写字母和数字的字符串,并且要求s1和s2的长度都不超过255个字符。如果字符串中包含其他字符或超出长度,需要更改代码。
阅读全文