温馨提示×

c语言如何删除字符串中的指定字符

小亿
268
2023-08-24 09:02:59
栏目: 编程语言

可以使用循环遍历字符串,将不需要删除的字符拷贝到一个新的字符串中,最后将新的字符串赋值给原字符串。

以下是一个示例代码:

#include <stdio.h> #include <stdlib.h> #include <string.h> void deleteChar(char* str, char ch) { int len = strlen(str); int i, j; for (i = 0, j = 0; i < len; i++) { if (str[i] != ch) { str[j++] = str[i]; } } str[j] = '\0'; } int main() { char str[100]; char ch; printf("请输入字符串:"); gets(str); printf("请输入要删除的字符:"); scanf("%c", &ch); deleteChar(str, ch); printf("删除后的字符串为:%s\n", str); return 0; } 

在上述代码中,deleteChar函数用来删除字符串中的指定字符。str表示要删除字符的源字符串,ch表示要删除的字符。函数中使用了两个索引iji用来遍历源字符串中的字符,j用来保存不需要删除的字符。遍历源字符串时,如果当前字符不等于要删除的字符,则将该字符拷贝到新的字符串中,然后j自增1。最后将新的字符串末尾添加一个空字符\0表示字符串的结束。最后在主函数中调用deleteChar函数来删除指定字符,并打印删除后的字符串。

0