用c语言提取字符串中的数字

字符串长度不定比如,输入字符串“325hjj09402r0fg25”则要输出“325 09402 0 25”

c语言提取字符串中的数字的操作如下:

1、首先打开visual studio软件并创建一个新的c语言文件,如下所示。

2、然后导入C语言文件顶部的库内容,如下所示。

3、然后使用scanf函数接收用户输入的字符串。

4、然后使用printf函数打印用户输入。

5、运行程序后,弹出下图所示的命令界面,自动接收输入内容,按原样输出。

6、最后,如果接收到其他类型,例如整数,则需要将该类型更改为int,如下图所示,scanf中的接收类型将变为d%,并提取字符串中的数字。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-05

工具\材料

电脑

方法如下

1、首先建一个PHP文档,定义一个包含数字的字符串。

2、接着使用定义正则表达式的匹配模式。

3、然后使用正则匹配函数“ preg_match_all()”。

4、根据判断的结果,在下图中加入打印。

5、最后保存内容就可以提取到数字。

本回答被网友采纳
第2个回答  2019-08-13

1、首先打开visual studio软件,新建一个C语言文件,如下图所示。

2、接着在C语言文件的顶部导入库内容,如下图所示。

3、接着运用scanf函数接收用户输入的字符串。

4、然后利用printf函数打印一下用户输入的内容。

5、运行程序以后就会弹出如下图所示的CMD界面,输入内容就会自动接收到,然后原样输出内容。

6、最后如果接收其他的类型,比如整数,那么类型就需要改变成int,如下图所示,并且scanf里面的接收类型变为d%,提取字符串中的数字。

本回答被网友采纳
第3个回答  推荐于2017-11-28
这个就是不用指针的.. 直接利用字符数组的下标来遍历.稍微做了些修改. 你看看#include <stdio.h>
void main()
{
char str[50];
int i=0; //i是数组下标. gets(str); //输入字符串.while(str[i]) //当数组元素不是字符串结束符时.执行while
{
if(str[i]>='0'&&str[i]<='9') //如果数组元素是数字. 就输出这个元素.
{
putchar(str[i]);
}
else
{
if(str[i-1]>='0'&&str[i-1]<='9') //否则判断前一个元素是不是数字.是的话输出一个空格.printf(" "); }
i++;
}
printf("\n");
}根据你的例子运行时截图如下:本回答被网友采纳
第4个回答  2015-04-02
#include<stdio.h>
int main()
{
char str[1000];//保存读取到的字符串
long sum=0,data[1000];
int i=0,top=0;

printf("输入字符串:\n");
scanf("%s",str);

while(str[i]!='\0')//未到字符串末尾
{
if(str[i]>='0'&&str[i]<='9')//如果是数字
sum=sum*10+(str[i]-'0');//连续数字转换为数.
else
if(sum!=0)//保存这个数
{
data[top++]=sum;
sum=0;
}
i++;
}

if(sum!=0)//判断最后一个字符是否是数
data[top++]=sum;

printf("字符串中的数字是:\n");
i=0;
while(i<top)
{
printf("%ld",data[i]);
if(i<top-1)//不打印最后一个逗号
printf(",");
i++;

}
printf("\n");

system("pause");
return 0;
}
相似回答