C语言输入一个字符串将其中的数字组成一个数字并输出
时间: 2023-06-13 18:07:43 浏览: 171
可以使用C语言中的库函数`isdigit()`和`atoi()`来实现。具体步骤如下:
1. 定义一个字符数组存储输入的字符串,假设为`str`。
2. 定义一个整型变量`num`,用于存储组成的数字。
3. 遍历字符串`str`,判断每个字符是否为数字,如果是,则将其转换为整型并加到`num`中。
4. 输出`num`。
下面是代码示例:
```c
#include <stdio.h>
#include <ctype.h> // isdigit函数所在的头文件
#include <stdlib.h> // atoi函数所在的头文件
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int num = 0;
for(int i = 0; str[i] != '\0'; i++) {
if(isdigit(str[i])) { // 判断是否为数字
num = num * 10 + atoi(&str[i]); // 将字符转换为数字并加到num中
}
}
printf("组成的数字为:%d\n", num);
return 0;
}
```
注意:上述代码中,`atoi()`函数需要传入一个字符指针作为参数,所以我们需要取出当前字符的地址`&str[i]`作为参数传入。而且代码中没有对输入的字符串进行长度限制,为了保证程序的健壮性,实际使用中应该添加输入长度的判断。
阅读全文