C++输入一个以回车结束的字符串(少于80个字符),把字符串中所有数字字符(0~9)转换为整数,去掉其他字符。
时间: 2023-06-10 14:07:32 浏览: 169
可以使用 C 语言中的字符函数和算法来实现该功能。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[80];
int num[80];
int len, i, j, k;
printf("请输入字符串(少于80个字符):");
fgets(str, 80, stdin); // 使用 fgets 函数读取输入的字符串
len = strlen(str);
j = 0;
for (i = 0; i < len; i++) {
if (str[i] >= '0' && str[i] <= '9') {
num[j] = str[i] - '0'; // 将字符转换为数字
j++;
}
}
printf("转换后的整数为:");
for (k = 0; k < j; k++) {
printf("%d", num[k]);
}
printf("\n");
return 0;
}
```
该代码中,首先使用 `fgets` 函数读取用户输入的字符串,并使用 `strlen` 函数获取字符串的长度。然后,遍历字符串中的每个字符,判断是否为数字字符,如果是则将其转换为整数并存储到数组 `num` 中。最后,遍历数组 `num` 并输出其中的数字即可。
需要注意的是,该代码只能处理少于 80 个字符的字符串,如果输入的字符串超出了这个范围,可能会导致程序出错。
阅读全文