输入一个字符串 str,再输入一个字符 c,将字符串 str 中出现的所有字符 c 删除。 要求定义并调用函数delchar(str,c), 它的功能是将字符串 str 中出现的所有 c 字符删除,函数形参str的类型是字符指针,形参c的类型是char,函数类型是void。
时间: 2023-05-20 11:00:39 浏览: 86
有一个字符串,内有若干个字符,今输入一个字符,要求程序将字符串中该字符删去。用外部函数实现。
好的,这是一个很简单的字符串处理问题。以下是delchar函数的完整代码:
```c
void delchar(char* str, char c) {
int len = strlen(str);
int j = 0;
for (int i = 0; i < len; i++) {
if (str[i] != c) {
str[j++] = str[i];
}
}
str[j] = '\0';
}
```
这个函数的实现很简单,它遍历字符串中的每个字符,如果当前字符不是要删除的字符c,就将它复制到新的字符串中。最后,将新字符串的结尾设置为'\0',以确保它是一个有效的C字符串。
要调用这个函数,只需要传递一个指向字符串的指针和要删除的字符即可。例如:
```c
char str[] = "hello world";
char c = 'l';
delchar(str, c);
printf("%s\n", str); // 输出 "heo word"
```
希望这个答案能够帮到你!
阅读全文