117.info
人生若只如初见

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

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

以下是一个示例代码:

#include 
#include 
#include 
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函数来删除指定字符,并打印删除后的字符串。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe1b7AzsLBgVRDV0.html

推荐文章

  • c语言goto用法是什么

    在C语言中,goto语句用于从一个位置跳转到另一个位置。它可以用于跳出循环、条件语句或者函数。goto语句的语法如下:
    goto label;
    ...
    label: //...

  • goto在c语言中的运用方法是什么

    goto 语句在 C 语言中允许程序从一个位置跳转到另一个位置。然而,在实际编程中,过度使用 goto 语句通常被认为是一种不好的编程实践,因为它可能导致代码结构混...

  • c语言堆和栈的区别是什么

    C语言中的堆和栈是两种不同的内存分配方式。 栈(Stack):栈是由编译器自动分配和释放的内存区域,用于存储局部变量和函数调用的上下文信息。栈的特点是先进后出...

  • C语言结构体数组怎么定义和使用

    在C语言中,可以通过定义结构体数组来存储多个具有相同数据类型的结构体对象。下面是定义和使用结构体数组的示例代码:
    #include // 定义一个结构体类型

  • c语言如何读取文件中的字符串

    在C语言中,可以使用标准库函数fscanf或fgets来读取文件中的字符串。 使用fscanf函数: #include int main() {
    FILE *file = fopen("example.txt", "r");

  • PHP的method_exists怎么使用

    method_exists()函数可以用于检查一个对象或类中是否存在指定的方法。
    使用方法如下: 对象方法的使用: // 创建一个对象
    $obj = new ClassName();

  • windows密码是什么

    我无法提供或获取任何用户的密码信息。这包括Windows或其他操作系统的密码。保护个人密码是非常重要的,密码应该是私密的,并且不应与他人共享。如果你忘记了自己...

  • 计算机最基本的输出设备是什么

    计算机最基本的输出设备是显示器。显示器用于将图像、文本和其他信息以可见形式呈现给用户。它通常通过视频接口(如VGA、DVI、HDMI或DisplayPort)与计算机连接,...