c语言字符串删除字符串
时间: 2023-11-27 17:47:28 浏览: 177
以下是两种C语言删除字符串的方法:
方法一:函数方法
```c
void delchar(char *str, char c) {
int i, j;
for (i = j = 0; str[i] != '\0'; i++) {
if (str[i] != c) {
str[j++] = str[i];
}
}
str[j] = '\0';
}
```
该方法只需要进行一次对目标字符串的遍历即可完成删除目标字符的功能。
方法二:利用字符数组
```c
#include <stdio.h>
#include <string.h>
int main() {
char a[100], b[100];
int pos, i, len;
printf("请输入一个字符串:");
gets(a);
len = strlen(a);
printf("请输入要删除的字符:");
scanf("%c", &b[0]);
for (i = 0; i < len; i++) {
if (a[i] == b[0]) {
pos = i;
break;
}
}
for (i = 0; i < len; i++) {
if (i == pos) {
continue;
}
printf("%c", a[i]);
}
return 0;
}
```
该方法需要定义两个字符数组a和b,以及标志删除位置的int型pos。首先用gets函数输入数组a的值,并利用for循环回将数组a copy到数组b。然后利用for循环,令pos位的数组b元素赋值到a。
阅读全文