c语言中编写函数fun()其功能是:从字符串中删除指定字符
时间: 2024-11-15 19:20:45 浏览: 33
在C语言中,编写一个名为`fun()`的函数,用于从给定的字符串中删除指定字符,可以采用动态内存分配和遍历数组的方式来实现。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
void remove_char(char *str, char target);
int main() {
char input[100];
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 注意fgets处理换行符
input[strcspn(input, "\n")] = '\0'; // 删除fgets产生的换行
char delete_char;
printf("请输入要删除的字符: ");
scanf("%c", &delete_char);
remove_char(input, delete_char);
printf("删除指定字符后的结果: %s\n", input);
return 0;
}
// 函数实现 - 删除指定字符
void remove_char(char *str, char target) {
int i, j;
for (i = 0, j = 0; str[i] != '\0'; ++i) { // 遍历字符串
if (str[i] != target) { // 如果不是目标字符,则保留
str[j++] = str[i]; // 将字符复制到新位置
}
}
str[j] = '\0'; // 结束字符串,添加空字符
}
```
在这个例子中,`remove_char()`函数会遍历输入的字符串,如果遇到指定字符则跳过,其余字符原地替换。注意,这个函数假设输入字符串足够大以容纳修改。
阅读全文