#define MAX 100
char xx[MAX][20].
void WriteDat(void) .
int ReadDat(void)
{
FILE *fp .
int i,data.
char yy[20].
if((fp=fopen("in.dat","r"))==NULL) return 1.
for(i=0.i<100.i )
{fscanf(fp,"%x,",&.data).
itoa(data,yy,16).
strcpy(xx[i],yy).
}
fclose(fp) .
return 0 .
}
void H16to8(void)
{int i,data.
char yy[20].
for(i=0.i<100.i )
{data=strtol(xx[i],NULL,16).
itoa(data,yy,8).
strcpy(xx[i],yy).
}
}
void main()
{
int i .
for(i=0.iif(ReadDat())
{printf("Can t open the data file in.dat!\007\n") .
return.
}
H16to8().
WriteDat().
}
void WriteDat(void)
{
FILE *fp.
int i.
fp=fopen("out.dat", "w") .
for(i=0.ifclose(fp) .
}
/* 注:本题中用到函数itoa()来实现从整型变成字符型。*/
int ReadDat(void)
{
FILE *fp .
int i,data.
char yy[20].
if((fp=fopen("in.dat","r"))==NULL) return 1.
for(i=0.i<100.i )
{fscanf(fp,"%x,",&.data).
itoa(data,yy,16).
strcpy(xx[i],yy).
}
fclose(fp) .
return 0 .
}
void H16to8(void)
{
int i,data.
char yy[20].
for(i=0.i<100.i )
{data=strtol(xx[i],NULL,16).
itoa(data,yy,8).
strcpy(xx[i],yy).
}
}