c语言编程实现按照要求删除字符串中指定的字符,如从键盘上输入:****A*BC*DEF*******,删除左边和字符中间的星号,得到的结果为:ABCDEF*******
时间: 2024-03-18 09:37:17 浏览: 23
以下是一个C语言编程实现按照要求删除字符串指定字符的例子[^1]:
```c
#include<stdio.h>
#include<string.h>
int main() {
char str[100], s[100 c;
int i = 0, j = 0, flag = 0;
printf("请输入一个字符串:");
gets(str);
printf("请输入指定的字符:");
c = getchar();
while (str[i] != '\0') {
if (str[i] == '*') {
flag = 1; // 标记遇到星号
}
if (flag == 0 || (flag == 1 && s[i] != c)) {
s[j] = str[i];
j++;
}
if (flag == 1 && str[i] == c) {
flag = 0; // 遇到指定字符后取消标记
}
++;
}
s[j] = '\0';
puts(s);
return 0;
}
```
运行结果:
```
一个字符串:****A*BC*DEF*******
请输入指定的字符:*
ABCDEF*******
```
相关问题
c语言实现有以下字符串:****A*BC*DEF****,删除字符串中间的星号,得到如下结果:****ABCDEF****
要实现删除字符串中间的星号,可以使用C语的字符串处理函数和循环来完成。以下是一种可能的实现方式:
```c
#include <stdio.h>
#include <string.h>
void removeStars(char* str) {
int len = strlen(str);
int i, j;
for (i = 0, j = 0; i < len; i++) {
if (str[i] != '*') {
str[j] = str[i];
j++;
}
}
str[j] = '\0';
}
int main() {
char str[] = "****A*BC*DEF****";
removeStars(str);
printf("%s\n", str);
return 0;
}
```
运行以上代码,输出结果为:****ABCDEF****。
c语言案例:有以下字符串:****A*BC*DEF****,案 删除字符串中的星号,得到如下结果:例 ABCDEF
在C语言中,可以使用字符串处理函数和循环来删除字符串中的特定字符。以下是一个示例代码,用于删除字符串中的星号:
```c
#include <stdio.h>
#include <string.h>
void removeStars(char* str) {
int len = strlen(str);
int i, j;
for (i = 0, j = 0; i < len; i++) {
if (str[i] != '*') {
str[j++] = str[i];
}
}
str[j] = '\0';
}
int main() {
char str[] = "****A*BC*DEF****";
removeStars(str);
printf("结果:%s\n", str);
return 0;
}
```
运行以上代码,输出结果为:ABCDEF。该代码通过遍历字符串,将非星号字符复制到原字符串中,最后在末尾添加字符串结束符'\0'来实现删除星号的功能。