如何用c语言输入一个字符串,把里面连续的数字依次存放到一个数组中
如何用c语言输入一个字符串,把里面连续的数字依次存放到一个数组中如输入一个字符串:sd348ghi 35qeaio843ud843
则将348放在a[0],35放在a[1],843放在a[2],843放在a[3],统计有多少个整数,并输出这些整数。
void main()
{
char a[80],*p=a;
int b[80]={0},i=0,j=0,x=0; //!!!!
printf("请输入一串字符\n");
gets(a);
for(p=a;(*p)!='\0';p++)
{
if(((*p)>='0')&&((*p)<='9')) //!!!!
{
if(x==0) //这是什么意思,看不懂,求帮解答
{
b[i]=(*p)-48;
i++;
}
else
b[i-1]=b[i-1]*10+(*p)-48; //这个也看不懂
x=1;
}
else
x=0;
}
for(j=0;b[j]!=0;j++) //!!!!
printf("%d ",b[j]);
printf("共有%d个",j);
printf("\n");
}