C++编写程序,将一个字符串中的数字字符都删除
时间: 2024-05-14 19:13:33 浏览: 12
好的,这个问题很简单。下面是一个 C 语言的程序,可以将一个字符串中的数字字符都删除:
```c
#include <stdio.h>
int main() {
char str[100], result[100];
int i, j;
printf("请输入一个字符串:");
scanf("%s", str);
for (i = 0, j = 0; str[i] != '\0'; i++) {
if (str[i] < '0' || str[i] > '9') { // 判断是否为数字字符
result[j] = str[i]; // 将非数字字符复制到结果字符串
j++;
}
}
result[j] = '\0'; // 在结果字符串的结尾添加一个空字符
printf("删除数字字符后的字符串为:%s\n", result);
return 0;
}
```
你可以在 C 语言的编译环境中运行这个程序,然后输入一个字符串,程序会自动将其中的数字字符删除,然后输出结果。
相关问题
编写c++程序将输入一个字符串将其中的数字字符全部删除
好的,以下是C++代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
cout << "请输入一个字符串:";
getline(cin, str); // 获取一行输入
for (int i = 0; i < str.length(); i++)
{
if (isdigit(str[i])) // 判断是否为数字字符
{
str.erase(i, 1); // 删除该字符
i--; // 因为删除后索引会减1,所以需要i--来保证不会漏删
}
}
cout << "删除数字字符后的字符串为:" << str << endl;
return 0;
}
```
程序首先提示用户输入一个字符串,然后使用`getline()`函数获取一整行输入。接着使用`for`循环遍历字符串中的每一个字符,如果该字符是数字字符,就使用`erase()`函数将该字符从字符串中删除。删除后因为索引会相应减1,所以需要`i--`来保证不会漏删。最后输出删除数字字符后的字符串。
编写一个C++程序,实现功能将字符串中的特定字符全部删除
以下是一个简单的例子,可以将字符串中的所有a字符删除:
```
#include <stdio.h>
#include <string.h>
void removeChar(char *str, char c) {
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++) {
if (str[i] != c) {
str[j] = str[i];
j++;
}
}
str[j] = '\0';
}
int main() {
char str[100];
char c;
printf("Enter a string: ");
fgets(str, 100, stdin);
printf("Enter the character to remove: ");
scanf("%c", &c);
removeChar(str, c);
printf("Modified string: %s\n", str);
return 0;
}
```
在这个例子中,我们使用了一个名为`removeChar`的函数来删除字符串中的字符。该函数使用两个指针`i`和`j`来遍历输入字符串。当字符不是我们要删除的字符时,我们将其复制到输出字符串中,并将`j`指向下一个位置。最后,我们在输出字符串的结尾添加一个空字符。
在`main`函数中,我们读取输入字符串和要删除的字符,并将它们传递给`removeChar`函数。最后,我们打印修改后的字符串。