C语言从键盘输入的字符串有若干个数字字符,编写程序,用移动指针的方法将其中的数字字符取出(按自左向右的顺序)并组成一个整数,例如输入的字符串为12ab345c,则组成的整数为12345。
时间: 2024-02-12 12:09:41 浏览: 125
可以按以下步骤实现:
1. 通过 `gets` 函数从键盘读入一个字符串,存储到字符数组中。
2. 定义一个指向字符的指针 `p`,初始指向字符串的首字符。
3. 定义一个整型变量 `result`,初始值为 0。
4. 循环遍历字符串中的每个字符,若字符是数字,则将其转换为整数并加到 `result` 上。
5. 输出最终的整数 `result`。
具体的 C 语言代码如下:
```c
#include <stdio.h>
int main() {
char s[100];
printf("请输入一个字符串:");
gets(s);
int result = 0;
char *p = s;
while (*p) {
if (*p >= '0' && *p <= '9') {
result = result * 10 + (*p - '0');
}
p++;
}
printf("组成的整数为:%d\n", result);
return 0;
}
```
需要注意的是,上述代码没有对输入的字符串进行有效性检查,如果输入的字符串不符合要求(例如包含非数字字符),则程序可能会出现错误。
阅读全文