写一个c语言的函数 输入一个字符串和一个字符,删除该字符串中的这个字符。输出删除给定字符后的新字符串。
时间: 2024-05-01 13:17:24 浏览: 55
好的,可以的。以下是实现该功能的 C 语言函数示例:
```c
#include <stdio.h>
#include <string.h>
// 删除指定字符的函数
void remove_char(char *str, char ch) {
int len = strlen(str);
int i, j;
for (i = j = 0; i < len; i++) {
if (str[i] != ch) {
str[j++] = str[i];
}
}
str[j] = '\0';
}
// 测试删除函数
int main() {
char str[100], ch;
printf("请输入一个字符串:");
scanf("%s", str);
printf("请输入要删除的字符:");
scanf(" %c", &ch);
remove_char(str, ch);
printf("删除字符 '%c' 后的字符串为:%s\n", ch, str);
return 0;
}
```
希望能解决您的问题。如果您还有其他问题,欢迎随时提出。
相关问题
c语言编程输入一个字符串和一个字符,删除该字符串中的这个字符。输出删除给定字符后的新字符串。
好的,这是一个关于C语言编程的问题。以下是示例代码:
```
#include <stdio.h>
#include <string.h>
int main(){
char str[100], ch;
int i, j;
printf("输入一个字符串:");
gets(str);
printf("输入要删除的字符:");
scanf("%c", &ch);
for(i = j = 0; str[i] != '\0'; i++){
if(str[i] != ch){
str[j] = str[i];
j++;
}
}
str[j] = '\0';
printf("删除给定字符后的新字符串为:%s", str);
return 0;
}
```
注意,这里使用了gets函数从控制台输入字符串,所以需要在开头引入string.h头文件。
c语言 编写一个函数,删除给定字符串中的指定宇符,如给定字符串“Chinese”,删除指定字符'e',字符串变为“chins”,主函数完成给定字符串和指定字符的输入,调用所编函数,输出处理后的字符串。
可以编写一个名为 `deleteChar` 的函数,接收两个参数:字符串的指针和待删除的字符。函数实现如下:
```c
#include <stdio.h>
#include <string.h>
void deleteChar(char *str, char c) {
int len = strlen(str);
int i, j;
for (i = 0, j = 0; i < len; i++) {
if (str[i] != c) {
str[j++] = str[i];
}
}
str[j] = '\0'; // 将新字符串的结尾标记设为'\0'
}
int main() {
char str[100], c;
printf("请输入字符串:");
scanf("%s", str);
printf("请输入要删除的字符:");
scanf(" %c", &c);
deleteChar(str, c);
printf("处理后的字符串为:%s\n", str);
return 0;
}
```
这里使用了两个指针 i 和 j,遍历原始字符串中的所有字符,如果当前字符不是待删除的字符,则将其复制到新字符串中,并将 j 指针后移一位。最后,将新字符串的结尾标记设为 '\0'。
在主函数中,先读入字符串和待删除的字符,然后调用 `deleteChar` 函数进行处理,最后输出处理后的字符串。注意,在读入待删除的字符时,需要在前面加上一个空格,以避免读入上一次输入时留下的回车符。
阅读全文