用c语言删除字符串string中的字符
时间: 2024-05-08 13:18:36 浏览: 49
可以使用C语言中的指针和字符数组操作来删除字符串中的字符。
以下是一个简单的例子:
```c
#include <stdio.h>
#include <string.h>
void remove_char(char *str, char c) {
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++) {
if (str[i] != c) {
str[j++] = str[i];
}
}
str[j] = '\0';
}
int main() {
char string[] = "Hello World!";
char c = 'o';
printf("Before: %s\n", string);
remove_char(string, c);
printf("After: %s\n", string);
return 0;
}
```
该程序接受一个字符数组和一个字符作为输入。它从输入字符串中删除所有出现的该字符,并返回修改后的字符串。使用指针遍历字符串,查找要删除的字符并使用数组的下标将其从字符串中删除。最后,在最后一个字符后添加一个空字符,以表示字符串已结束。
输出:
```
Before: Hello World!
After: Hell Wrld!
```
注意:该代码只能删除单个字符,如果要删除字符串中的一组连续的字符,则需要设计更复杂的算法。
阅读全文