编写函数delchar(char str[], char ch),将字符串str中的所有字符ch删除。 要求另外再编写一个main函数,调用delchar函数,并上传源代码文件。 要求: delchar函数无输入输出,main函数可包含输入输出。
时间: 2024-03-26 20:35:58 浏览: 51
以下是符合要求的代码:
```c
#include <stdio.h>
#include <string.h>
void delchar(char str[], char ch)
{
int i, j = 0;
int len = strlen(str);
for (i = 0; i < len; i++)
{
if (str[i] != ch)
{
str[j] = str[i];
j++;
}
}
str[j] = '\0';
}
int main()
{
char str[100], ch;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
printf("请输入要删除的字符:");
scanf("%c", &ch);
delchar(str, ch);
printf("删除后的字符串为:%s", str);
return 0;
}
```
在这个程序中,我们定义了一个名为`delchar`的函数,它接受两个参数:一个字符数组和一个字符。它的作用是将字符串中的所有指定字符删除。在主函数中,我们首先输入一个字符串和要删除的字符,然后调用`delchar`函数。最后输出删除后的字符串。
需要注意的是,我们使用了`fgets`函数来输入字符串,因为它可以避免输入缓冲区溢出的问题。同时,在输入字符时,需要使用`scanf`函数的格式控制符`%c`,因为它可以读取单个字符。
阅读全文