输入一个字符串,内有数字和非数字字符
例如:A123x456 17690? 302tab5876
将其中连续的数字作为一个整数,依次存放到一维数组a中。例如,123存放到a[0],456存放到a[1]......统计共有多少个整数,并输出这些数。
#include<stdio.h>
#include<string.h>
int main()
{
void fun(char *p,int *p1,int len,int n);
char str[]="A123x456 17690? 302tab5876";
int a[5]={0};
int len=sizeof(str)/sizeof(str[0]);//注意这里len的结果是27,在字符数组里统计到了'\0'
fun(str,a,len,5);
for(int i=0;i<5;i++)
{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
void fun(char *p,int *p1,int len,int n)
{
int count=0;
int sum=0;
int j=0;
for(int i=0;i<len-1;i++)//因为len的值为27,所以i<len-1
{
if(*(p+i)>='0'&&*(p+i)<='9')
{
if(*(p+i+1)>='0'&&*(p+i+1)<='9'&&*(p+i+1)!='\0')//这里条件确定很重要
{
sum=sum*10&