#include<stdio.h>
#include<math.h>
#include<stdlib.h>
intmain()
{
intz=0;
intt,i;
int*p;
intm=0;
ints=0;
chara[10];//輸入壹個字符串到a[6]
printf("請輸入壹個字符串\n");
scanf("%s",a);//輸入字符串
for(i=0;i<10;i++)//計算a[6]中的數字個數
{
if(a[i]>='0'&&a[i]<='9')
m++;
}
if(m==0)
printf("字符串中沒有數字\n");
p=(int*)calloc(m,sizeof(int));//動態數組
for(i=0;i<10;i++)
{
if(a[i]>='0'&&a[i]<='9')
{
*(p+s)=a[i]-48;
s++;
}
}
//組成新的整數
for(t=0;t<m;t++)
{
z+=(*(p+t))*pow(10,m-(t+1));//組成新的整數
}
printf("新組成整數:%d\n",z);
free(p);
}
kuo
擴展資料
C語言實現將字符串的數字提取為整數
#include<stdio.h>
intStringToInteger(char*p)
{
intvalue=0;
while(*p!='\0')
{
if((*p>='0')&&(*p<='9'))
{
value=value*10+*p-'0';
}
p++;
}
returnvalue;
}
intmain(void)
{
char*str="112.123.156.1";
intval=0;
val=StringToInteger(str);
printf("value=%d\n\r",val);
getchar();
return0;
}