c语言怎么删除字符串中的指定字符

689
2023/7/28 20:10:57
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C语言中,可以通过循环遍历字符串并判断字符是否是指定字符,然后将非指定字符复制到新的字符串中,从而删除字符串中的指定字符。以下是一个示例代码:

#include <stdio.h>
#include <string.h>
void removeChar(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'; // 添加字符串结尾的空字符
}
int main() {
char str[100];
char c;
printf("请输入字符串:");
fgets(str, sizeof(str), stdin);
printf("请输入要删除的字符:");
scanf("%c", &c);
removeChar(str, c);
printf("删除指定字符后的字符串为:%s", str);
return 0;
}

在这个示例代码中,使用removeChar函数来删除字符串中的指定字符。该函数接受一个指向字符串的指针和一个字符作为输入参数。

首先,使用strlen函数获取字符串的长度,然后使用循环遍历字符串中的每个字符。如果当前字符不是指定字符,则将其复制到新的字符串中,并使用变量j来记录新字符串的下一个位置。

最后,将新字符串的最后一个字符设置为字符串结尾的空字符,表示结束。

main 函数中,使用 fgets 函数读取用户输入的字符串,并使用 scanf 函数读取用户输入的要删除的字符。

最后,调用 removeChar 函数删除指定字符,并打印删除指定字符后的字符串。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c语言strcmp函数的用法是什么