在字符串中删除与某字符相同的字符,要求用字符数组作函数参数。 程序运行结果示例: Input a string: hello, my friend! Input a character: e Results:hllo, my frind! 输入格式: 输入字符串的提示信息: "Input a string:\n" 输入单个字符的提示信息: "Input a character:\n" 输入格式: 字符串输入用 gets()函数 单个字符输入用 getchar()函数
时间: 2024-03-22 20:39:11 浏览: 102
好的,下面是一个简单的 C 语言程序,用于实现在字符串中删除与某字符相同的字符:
```c
#include <stdio.h>
#include <string.h>
void remove_char(char str[], char c)
{
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++) {
if (str[i] != c) {
str[j++] = str[i];
}
}
str[j] = '\0';
printf("删除后的字符串为:%s\n", str);
}
int main()
{
char str[100], c;
printf("Input a string:\n");
gets(str);
printf("Input a character:\n");
c = getchar();
getchar(); // 读取多余的回车符
remove_char(str, c);
return 0;
}
```
在该程序中,我们首先定义了一个 remove_char 函数,用于实现删除字符串中与某个字符相同的字符。在函数中,我们先获取字符串的长度 len。然后,我们使用一个 for 循环遍历字符串中的每个字符,如果当前字符不等于要删除的字符,将其复制到新的位置 j,同时 j 自增;否则,跳过该字符。最后,我们将字符串的末尾设置为 '\0',表示字符串的结束,并将删除后的字符串输出到屏幕上。
在 main 函数中,我们首先定义一个 char 数组 str 和一个字符 c,分别用于存储用户输入的字符串和要删除的字符。然后,使用 gets 函数从键盘读取用户输入的字符串,使用 getchar 函数读取用户输入的字符,注意需要读取多余的回车符。最后,调用 remove_char 函数进行删除操作。
希望这个程序可以帮助你删除字符串中与某个字符相同的字符。
阅读全文