求一控制方法!
刚学C不久,有一道题输入一串字符,然后找出其中的连续数字作为一个数存放在一个数组里,然后输出这些数字:
#include <stdio.h>
#include <string.h>
void main()
{
char a[100];
int b[100]={0};
int i,j,s,k;
printf("please enter string!\n");
gets(a);
s=strlen(a);
for (i=0,j=0;i<s;i++) //此处for语句意图发现数字的时候把k标记成0,变成字母的时候标记成1
if (a[i]>='0'&&a[i]<='9')
{
k=0;
b[j]=b[j]*10+(a[i]-48);
}
else k=1;
/*请问如何在此处添加一条控制语句使j在读完一串连续的数字后+1*/
for (i=0;b[i]!=0;i++)
printf("%d ",b[i]);
printf("\n");
}
[解决办法]
else语句加个大括号包含 if(k==0)j++;再将 k 赋值为 1,