69,371
社区成员
发帖
与我相关
我的任务
分享
#define N 100
#include<stdio.h>
#include <stdlib.h>
void count_num(char *p,int *pt);
void out_num(int* pt);
void main()
{
char str[N],*p=str;
int a[N],*pt=a;
printf("Please enter a string:\n");
gets(p);
for(int i=0; i<N; i++)
a[i]=0;
count_num(p,pt);
out_num(pt);
}
void count_num(char *p,int *pt)
{
char string[N];
int i=0,j=0,num=0;
do
{
if (('0' <= *p) && (*p <= '9'))
{
string[i++]=*p;
}
else
{
if(i)
{
string[i] = 0;
*pt = atoi(string);
i=0;
pt++;
}
}
}
while(*p++);
}
void out_num(int* pt)
{
for(int i=0; i<N; i++)
{
if (pt[i])
printf("%d\n", pt[i]);
else
break;
}
}
#include <stdio.h>
#include <stdlib.h>
#define N 100
int count_num(char *p,int *pt);
int main(){
char str[N] = {0};
int a[N],*pt=a;
int i,j;
printf("Please enter a string:\n");
gets(str);
j = count_num(str,pt);
printf("你输入的数字为: ");
for(i=0; i<j; ++i)
printf("%d ",pt[i]);
printf("\n");
system("PAUSE");
return(0);
}
int count_num(char *p,int *pt)
{
int j=0,num=0;
char *temp = p;
while(*temp)
{
if(*temp>='0' && *temp<='9'){
num = num*10 + *temp - '0';
if((*(temp+1)) == 0)
pt[j++] = num;
}else{
if(num)
pt[j++] = num;
num = 0;
}
temp++;
}
return j;
}
#include <stdio.h>
#include <stdlib.h>
void main(){
char *org="a123b456cd789,321,oid83",
tmp[32];
int dst[64],i=0,j=0;
char* p=org;
while(*p){
while(*p>=0x30 && *p<=0x39)
tmp[i++]=*p++;
if(i){
tmp[i]=0;
dst[j++]=atoi(tmp);
i=0;
}
else p++;
}
for(i=0;i<j;i++)
printf("%d\n",dst[i]);
}
while (*p++) {
if ('0' <= *p && *p <= '9')
string[i++] = *p;
else if (*p == '\0')
break;
}
while (*p++) {
if ('0' <= *p && *p <= '9')
string[i++] = *p;
else if (*p == ',')
break;
}
isdigit(c)