C语言 从字符串中提取数字
2011-12-26 16:26
148 查看
#include<stdio.h>
#include<string.h>
#include<math.h>
#define N 100
int change(char string[]);
int count_num(char *p,int *pt);
void main()
{
char str
,*p=str;
int a
,*pt=a,i,n;
gets(p);
n=count_num(p,pt);
printf("\nnum=%d\n",n);
for(i=0;i<n;i++)
printf("%d ",*(pt+i));
printf("\n");
}
int count_num(char *p,int *pt)
{
char string
;
int i=0,num=0;
do
{
if(*p>='0'&&*p<='9')
{
string[i++]=*p;
}
else
{
string[i]='\0';
if(i)
{
*pt++=change(string);
i=0;
num++;
}
}
} while(*p++);
return num;
}
int change(char string[])
{
char *p=string;
int i,j,number=0;
for(i=strlen(p)-1,j=0;i>=0;i--,j++)
{
number=number+(*(p+i)-'0')*(int)pow(10,j);
}
return number;
}
#include<string.h>
#include<math.h>
#define N 100
int change(char string[]);
int count_num(char *p,int *pt);
void main()
{
char str
,*p=str;
int a
,*pt=a,i,n;
gets(p);
n=count_num(p,pt);
printf("\nnum=%d\n",n);
for(i=0;i<n;i++)
printf("%d ",*(pt+i));
printf("\n");
}
int count_num(char *p,int *pt)
{
char string
;
int i=0,num=0;
do
{
if(*p>='0'&&*p<='9')
{
string[i++]=*p;
}
else
{
string[i]='\0';
if(i)
{
*pt++=change(string);
i=0;
num++;
}
}
} while(*p++);
return num;
}
int change(char string[])
{
char *p=string;
int i,j,number=0;
for(i=strlen(p)-1,j=0;i>=0;i--,j++)
{
number=number+(*(p+i)-'0')*(int)pow(10,j);
}
return number;
}
相关文章推荐
- 提取字符串中的数字-指针版本-(C语言描述)
- 提取字符串中的数字-非指针版-(C语言描述)
- 提取字符串中的数字(C语言)
- c语言初学--计算字符串中数字的最大长度并提取 以及输入两个子串 提取分别以这为开头和结尾的字符串
- c语言实现字符串中提取数字,遇到非字符串则换行
- 【C语言】编写函数实现库函数atoi,把字符串转换成整形(考虑数字过大)
- 大一下期末考试:将数字字符和非数字字符组成的字符串中的数字提取出来
- 提取字符串的数字和非数字字符
- 【C语言】用一个函数,从一个字符串中提取一个子字符串。
- 从字符串中提取数字并排序输出
- 从字母数字字符串中提取数字
- Excel中 提取字符串中的字符或数字
- C语言字符串,字符转数字,数字转字符(转)
- 利用awk命令提取字符串中的所有数字
- JavaScript正则表达式提取字符串中字母、数字、中文[转]
- 提取字符串中的数字
- c语言循环位移(数字,字符串)
- C语言中自定义Split函数分割字符串以及利用strtol函数把字符串转换为数字的实例
- 小Tip:从字符串中提取数字
- python 如何从字符串中提取出不同数字并输出