您的位置:首页 > 其它

输入字符串,内有数字和非字符数组,例如A123x456将其中连续的数字作为一个整数,依次存放到一个数组中,如123放到a[0],456放到a[1],并输出a这些数

2018-01-04 10:54 1866 查看
#include "stdio.h"

#include "string.h"

#include "math.h"

int isdigit(char c)

{

    if(c>47 && c<58)

    {

        return 1;

    }

    

    return 0;

}

char *s_gets(char *st,int size);

int main()

{

char str[30],str1[10][10],*end;

int t=0,m=0,i,digit_num=0;long a[9];

printf("请输入一个字符串:");

s_gets(str,30);

for(i=0;i<strlen(str);i++)

{

if(isdigit(str[i]))

{

    str1[m][t]=str[i];

    t++;

    digit_num++;

}

else

{

    

    if(t!=0)

    {

    str1[m][t]='\0';

    

//    a[m]=strtol(str1[m],&end,10);

    t=0;

    m++;

    }

}

printf("%c",str[i]);

}

printf("共有%d位数字",digit_num);

for(i=0;i<=m;i++)

printf(" %s",str1[i]);

return 0;

}

char *s_gets(char *st,int size)

{

char *ret_val;

int i=0;

ret_val=fgets(st,size,stdin);

if(ret_val)

{

while(st[i]!='\0'&&st[i]!='\n')

i++;

if(st[i]='\n')

st[i]='\0';

else

while(getchar()!='\n')

continue;

}

return ret_val;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐