将用户输入的字符串中的所有指定字符删除得到新字符串后输出。C语言
时间: 2023-12-07 09:05:23 浏览: 62
好的,下面是一个实现该功能的C语言代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[101]; // 存放输入的字符串
char del; // 存放要删除的字符
int len; // 存放字符串的长度
int i, j; // 循环计数器
// 输入字符串和要删除的字符
fgets(str, 101, stdin);
scanf("%c", &del);
// 计算字符串的长度
len = strlen(str);
// 删除指定字符
for (i = 0, j = 0; i < len; i++) {
if (str[i] != del) { // 如果不是要删除的字符,则将该字符加入新字符串中
str[j++] = str[i];
}
}
str[j] = '\0'; // 在新字符串的末尾添加字符串结束标志
// 输出新字符串
printf("%s", str);
return 0;
}
```
这个程序首先读入输入的字符串和要删除的字符,然后循环扫描字符串中的每个字符,如果不是要删除的字符,则将该字符加入新字符串中。最后输出新字符串即可。需要注意的是,在新字符串的末尾必须添加字符串结束标志`\0`。
相关问题
c语言将用户输入的字符串中所有的字符a去掉
可以使用C语言中的字符串处理函数来实现。以下是一种可能的方案:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
// 使用字符串处理函数strchr()和strcpy()来删除字符a
char *p = str;
while ((p = strchr(p, 'a')) != NULL) {
strcpy(p, p + 1);
}
printf("删除a后的字符串为:%s\n", str);
return 0;
}
```
该程序使用了字符串处理函数`strchr()`和`strcpy()`。`strchr()`函数用于在一个字符串中查找某个字符,并返回它的指针。然后,我们可以使用`strcpy()`函数将该指针后面的字符往前移动一位,以删除字符a。由于可能有多个字符a,因此我们使用了一个循环来不断查找和删除字符a,直到所有的字符a都被删除。最后,我们输出删除a后的字符串。
C语言编写程序,将用户输入的字符串中所有非字符a去掉,然后输出剩余的字符
可以使用C语言中的字符串处理函数来实现。以下是一种可能的实现方法:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
printf("请输入字符串:");
gets(str); // 获取用户输入的字符串
int i, j;
for (i = 0, j = 0; i < strlen(str); i++)
{
if (str[i] != 'a') // 如果当前字符不是'a',则将其保存到新字符串中
{
str[j] = str[i];
j++;
}
}
str[j] = '\0'; // 在新字符串结尾添加结束符
printf("处理后的字符串为:%s\n", str);
return 0;
}
```
该程序先定义一个大小为100的字符数组来保存用户输入的字符串。然后使用gets()函数获取用户输入的字符串,并遍历整个字符串,如果当前字符不是 'a',则将其保存到新的字符串中。最后在新字符串的末尾添加一个结束符 '\0',并输出新字符串即可。