删除字符串中的字符。输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字符c删除,打印删除字符后的字符串。要求定义并调用函数delchar(s,c),它的功能是将字符串s中出现的所有c字符删除。
时间: 2023-04-18 18:04:14 浏览: 64
可以使用Python内置的replace()函数来删除字符串中的字符。具体实现如下:
def delchar(s, c):
return s.replace(c, "")
s = input("请输入字符串:")
c = input("请输入要删除的字符:")
result = delchar(s, c)
print("删除字符后的字符串为:", result)
其中,delchar()函数接收两个参数,分别是字符串s和要删除的字符c。函数内部使用replace()函数将字符串s中的所有c字符替换为空字符串,最后返回替换后的字符串。在主程序中,先输入字符串s和要删除的字符c,然后调用delchar()函数得到删除字符后的字符串,最后打印输出即可。
相关问题
C语言 删除字符串中的字符。输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字
符c删除后输出剩余字符串。
可以使用双指针的方法来实现字符串中字符的删除。具体思路如下:
1. 定义两个指针i和j,分别指向字符串的开头。
2. 从左到右遍历字符串s,当遇到字符c时,i指针不动,j指针继续向右移动。
3. 当遇到不是字符c的字符时,将该字符复制到i指针所指向的位置,并将i指针向右移动一位。
4. 重复2-3步,直到遍历完整个字符串s。
5. 最后,将i指针所指向的位置设为字符串结束符'\0',输出字符串s即可。
下面是C语言代码实现:
```c
#include <stdio.h>
#include <string.h>
void delete_char(char s[], char c) {
int i, j;
for (i = 0, j = 0; s[j] != '\0'; j++) {
if (s[j] != c) {
s[i] = s[j];
i++;
}
}
s[i] = '\0';
}
int main() {
char s[100], c;
printf("请输入一个字符串s:");
scanf("%s", s);
printf("请输入要删除的字符c:");
scanf(" %c", &c);
delete_char(s, c);
printf("删除后的字符串为:%s\n", s);
return 0;
}
```
示例输入:
```
请输入一个字符串s:hello world
请输入要删除的字符c:l
```
示例输出:
```
删除后的字符串为:heo word
```
用c语言写:删除字符串中的字符.输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字符c删除.要求定义并调用函数delchar(s,c),它的功能是将字符串s中出现的所有c字符删除.
以下是用C语言实现删除字符串中指定字符的代码:
```c
#include <stdio.h>
#include <string.h>
void delchar(char s[], char c) {
int i, j;
int len = strlen(s);
for (i = j = 0; i < len; i++) {
if (s[i] != c) {
s[j++] = s[i];
}
}
s[j] = '\0';
}
int main() {
char s[100], c;
printf("请输入字符串s:");
scanf("%s", s);
printf("请输入要删除的字符c:");
scanf(" %c", &c); // 注意要在 %c 前加一个空格,以消耗掉输入缓冲区中的回车键
delchar(s, c);
printf("删除后的字符串为:%s\n", s);
return 0;
}
```
函数 `delchar()` 的实现中,使用两个指针 i 和 j 分别指向字符串 s 的当前字符和新字符串的位置,当 s[i] 不等于 c 时,将其复制到新字符串中,j 自增,最后在新字符串的结尾处加上字符串结束符 `\0`。在主函数中,先输入字符串 s 和字符 c,然后调用 `delchar()` 函数进行操作。最后输出删除后的字符串即可。
需要注意的是,输入字符 c 时要在 `%c` 前加一个空格,以消耗掉输入缓冲区中的回车键,否则会出现意料之外的结果。
阅读全文