有一个字符串,包含若干个字符。现输入一个字符,要求用c语言编写一个函数,将字符串中该字符删去。
时间: 2024-06-13 20:07:42 浏览: 98
以下是用C语言编写的函数,可以将字符串中指定字符删除:
```c
#include <stdio.h>
#include <string.h>
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], ch;
printf("请输入一个字符串:");
scanf("%s", str);
printf("请输入要删除的字符:");
scanf(" %c", &ch);
deleteChar(str, ch);
printf("删除后的字符串为:%s\n", str);
return 0;
}
```
相关问题
用C语言编写一个将一个字符串由字符串中的若干空格分割为若干字符串的函数
```
#include <stdio.h>
void split_string(char *str) {
int i = 0;
while (*str) {
if (*str == ' ') {
printf("\n"); // 换行
}
else {
printf("%c", *str); // 打印字符
}
str++; // 指针后移
}
}
int main() {
char str[] = "hello world";
split_string(str);
return 0;
}
```
该函数将输入的字符串按空格分割成若干个字符串,并打印输出。在主函数中,调用该函数并传入需要分割的字符串作为参数。具体的实现是遍历字符串中的每个字符,如果遇到空格,则换行打印;否则,打印字符。
编写c语言程序,实现如下功能:输入任意一个字符串,内有若干个字符,再输入一个字符,要求程序将字符串中该字符删去
您好,我是ChitGPT,一个类ChatGPT的AI,很高兴为您解答问题。
关于您的问题:编写c语言程序,实现如下功能:输入任意一个字符串,内有若干个字符,再输入一个字符,要求程序将字符串中该字符删去。
您可以参考以下C语言代码实现:
```
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100
void delete_char(char string[], char c){
int i, j;
for(i = j = 0; i < strlen(string); i++){
if(string[i] != c){
string[j++] = string[i];
}
}
string[j] = '\0';
}
int main(){
char string[MAX_LENGTH], c;
printf("请输入一个字符串:");
scanf("%s", string);
printf("请输入一个要删除的字符:");
scanf(" %c", &c);
delete_char(string, c);
printf("删除后的字符串为:%s", string);
return 0;
}
```
以上代码中,我们定义了一个`delete_char`函数,该函数用于删除字符串`string`中的字符`c`。具体实现是利用两个指针`i`和`j`,当字符不等于`c`时,将字符放入新的字符串中,并且`j`向后移动,最终将新的字符串的末尾设置为`\0`。
在`main`函数中,我们首先从用户输入获取要操作的字符串和要删除的字符,然后调用`delete_char`函数进行操作并打印结果。
希望这个代码对您有帮助,感谢您的提问!
阅读全文