提取数字 ( 积分: 30 )

  • 主题发起人 主题发起人 lekaihuai
  • 开始时间 开始时间
L

lekaihuai

Unregistered / Unconfirmed
GUEST, unregistred user!
写了一个提取数字的程序,有点错误,能帮我看一下吗?
#include<stdio.h>
#include<stdlib.h>
#define LEN 256
char getline(char *s,int len)
{
int c;
char *p=s;
while(--len>0&amp;&amp;(c=getchar())!='/n')
*s++=c;
*s='/0';
return(s-p);
}
main()
{
char line[LEN],b[20],*ptrl,*ptrb;
int n=0,j,a[50];
getline(line,LEN);
ptrl=line;
while(*ptrl!='/0')
{
ptrb=b;
for(j=0;*ptrl>='0'&amp;&amp;*ptrl<='9';ptrl++,ptrb++,j++)*ptrl=*ptrb;
if(j){
*ptrb='/0';
*(a+n)=atoi(b);
n++;
}
if(*ptrl!='/0')ptrl++;
}
for(j=0;j<n;j++)printf(&quot;%d/n&quot;,*(a+j));
}
 
写了一个提取数字的程序,有点错误,能帮我看一下吗?
#include<stdio.h>
#include<stdlib.h>
#define LEN 256
char getline(char *s,int len)
{
int c;
char *p=s;
while(--len>0&amp;&amp;(c=getchar())!='/n')
*s++=c;
*s='/0';
return(s-p);
}
main()
{
char line[LEN],b[20],*ptrl,*ptrb;
int n=0,j,a[50];
getline(line,LEN);
ptrl=line;
while(*ptrl!='/0')
{
ptrb=b;
for(j=0;*ptrl>='0'&amp;&amp;*ptrl<='9';ptrl++,ptrb++,j++)*ptrl=*ptrb;
if(j){
*ptrb='/0';
*(a+n)=atoi(b);
n++;
}
if(*ptrl!='/0')ptrl++;
}
for(j=0;j<n;j++)printf(&quot;%d/n&quot;,*(a+j));
}
 

Similar threads

I
回复
0
查看
724
import
I
A
回复
0
查看
834
Andreas Hausladen
A
I
回复
0
查看
1K
import
I
I
回复
0
查看
729
import
I
I
回复
0
查看
658
import
I
后退
顶部