C语言编程:从字符串中提取数字

如题所述

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

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

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

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

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

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

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-10-18
#include<stdio.h>
#include<string.h>
#include<math.h>#define N 100
int change(char string[]);
int count_num(char *p,int *pt);void main()
{
char str[N],*p=str;
int a[N],*pt=a,i,n;
printf("Please enter a string:\n");
gets(p);
n=count_num(p,pt);
printf("\nnum=%d\n",n);
for(i=0;i<n;i++)
printf("%d ",*(pt+i));
printf("\n");
}int count_num(char *p,int *pt)
{
char string[N];
int i=0,num=0;
do
{
if(*p>='0'&&*p<='9')
{
string[i++]=*p;
}
else
{
string[i]='\0';
if(i)
{
*pt++=change(string);
i=0;
num++;
};
}
} while(*p++);
return num;
}int change(char string[])
{
char *p=string;
int i,j,number=0;
for(i=strlen(p)-1,j=0;i>=0;i--,j++)
{
number=number+(*(p+i)-'0')*(int)pow(10,j);
}
return number;
}本回答被网友采纳
相似回答