在C++中输入一字符串,将其中的所有数字删除,并输出改动后的字符串及其长度,例如,输入ab123df354ADFx193,输出and f ADFx 8。
时间: 2023-05-23 12:01:23 浏览: 75
可以使用以下代码实现:
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main() {
char str[100], res[100];
int len = 0;
printf("请输入一串字符串:");
scanf("%s", str);
for (int i = 0; str[i] != '\0'; i++) {
if (!isdigit(str[i])) { // 判断当前字符是否是数字
res[len++] = str[i]; // 如果不是数字就加入到结果字符串中
}
}
res[len] = '\0'; // 结果字符串要以'\0'结尾
printf("去除数字后的字符串为:%s,长度为:%d\n", res, strlen(res));
return 0;
}
相关问题
用C++输入一字符串,将其中的所有数字删除,并输出改动后的字符串及其长度,例如,输入ab123df354ADFx193,输出abdfADFx
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
printf("请输入字符串:");
scanf("%s", str);
int len = strlen(str);
int i, j;
for (i = 0, j = 0; i < len; i++)
{
if (str[i] < '0' || str[i] > '9')
{
str[j++] = str[i];
}
}
str[j] = '\0'; // 字符串末尾要加'\0'
printf("改动后的字符串为:%s,长度为:%d\n", str, strlen(str));
return 0;
}
用c++输人一字符串,将其中的所有数字州除,并输出改动后的宇符串及其长度,例如,输人 ab123d1354ADFx193,输出 abdfADFx 8
```
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str); // 字符串长度
int index = 0; // 新字符串的下标
// 遍历原字符串,将非数字字符添加到新字符串中
for (int i = 0; i < len; i++) {
if (str[i] < '0' || str[i] > '9') {
str[index++] = str[i];
}
}
str[index] = '\0'; // 结尾添加'\0',形成新的字符串
printf("改动后的字符串:");
puts(str); // 输出新字符串
printf("字符串长度:%d\n", strlen(str)); // 输出字符串长度
return 0;
}
```
阅读全文