用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;
}

用c语言提取字符串中的数字
用c语言提取字符串中的数字的操作如下:1、首先打开visual studio软件并创建一个新的c语言文件,如下所示。2、然后导入C语言文件顶部的库内容,如下所示。3、然后使用scanf函数接收用户输入的字符串。4、然后使用printf函数打印用户输入。5、运行程序后,弹出下图所示的命令界面,自动接收输入内容,按原样输...

C语言将用户输入的字符串中的所有数字提取出来
在C语言中,提取用户输入的字符串中的所有数字可以通过遍历字符串并检查每个字符是否为数字来实现。这通常通过`isdigit()`函数完成,该函数定义在``头文件中,用于检查给定的字符是否为十进制数字('0'-'9')。以下是一个简单的示例程序,该程序读取用户输入的字符串,然后遍历该字符串,使用`isdigit()...

c语言统计一串字符中包含数字的个数
函数应用 1、连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn.例:concat(‘11’,'aa’)='11aa’;2、求子串。 Copy(s,I,I) 从字符串s中截取第I个字符开始后的长度为l的子串。例:copy(‘abdag’,2,3)=’bda’3、删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符...

c语言怎么把字符串中的某一部分提取出来?
在C语言中,可以使用字符串函数来提取字符串中的某一部分。常用的函数包括`strcpy`、`strncpy`和指针操作等。C语言中处理字符串时,要特别注意字符串实际上是字符数组的一种表现形式。因此,提取字符串中的某一部分实际上就是通过操作字符数组来实现的。具体方法有以下几种:1. 使用`strcpy`函数:`strc...

C语言 将用户输入的字符串中的所有数字提取出来
intmain(){ intz=0;intt,i;int*p;intm=0;ints=0;chara[10];\/\/输入一个字符串到a[6]printf("请输入一个字符串\\n");scanf("%s",a);\/\/输入字符串 for(i=0;i<10;i++)\/\/计算a[6]中的数字个数 { if(a[i]>='0'&&a[i]<='9')m++;} if(m==0)printf("字符串中没有...

c语言怎么提取字符串中的数字
使用isdigit()函数。在C语言中,可以使用标准库函数isdigit()来检查一个字符是否为数字。isdigit()函数定义在头文件ctype.h中,原型是intisdigit(intc)。

C语言怎么读取字符串中的数字?
程序需要两层循环嵌套,读取repeat后进入第一层循环,第一次循环用于确定读取的字符串数,第二层循环用于读取字符和修正数据。程序框图如下图所示:2、确认程序使用变量及类型 根据程序需求可以确定所需变量及类型(如下图所示),此处应注意通过循环读取字符并同步统计,故仅需要使用一个char存储字符。3、...

c语言一串字符串中提取数字并相加的问题
printf("请输入字符串1:(输入?结束)");\/\/输入?作为字符串1的结束符 while(x!='?') { x=getchar(); if(x=='?') break; input1=x; if(input1>='0'&&input1<='9')\/\/每检查到一个数字就要乘10,进一位 number1=number1*10+input1-'0';\/\/比如字符'9'-'0'之后的数是数字9 } x...

C语言问题:给定一个任意字符串,提取出其中所包含的整数。
查找字符串中的数字并返回其个数:include <stdio.h>int main(void){char str[1000];int i, count, a[100];int p, q, r;int tmp;gets(str);r = 0;count = 0;while(1){while(str[r] && (str[r]<'0' || str[r]>'9'))r++;\/\/跳过非数字 if(str[r]){p = r;\/\/p指向...

如何用c语言分离字符串中的字母和数字并分别输出?
把字符串存放到数组里面,一个一个比对(循环)后输出 判断数字:for (i=0;i<n;i++){ if ((p[i]>='0') && (p[i]<='9'))printf();判断字母:for (i=0;i<n;i++){ if ((p[i]>='a') && (p[i]<='Z'))printf();...

相似回答