回复:(栖柏)我看到过了你问题,你能把源程序帖出来...
#include <stdio.h>
#include <stdlib.h>
float gvid,gvnid,guvid;
int vid, vnid, uvid;
int main(int argc, char** argv)
{
FILE* fp;
int i,point,n;
char buf[100];
char tmp[1024];
int dec[32];
int las[8];
char lass[8];
char *bak=tmp;
int no=0;
fp=fopen("e://nurse/0b1.txt", "rb");
if(!fp)
{
printf("cannot open input file.\n");
exit(0);
}
for(point=1;point<4;point++)
{
for(i=0; i<point; ++i)
{
fscanf(fp, "%[^\n]\n", buf);
//printf("%s\n", buf);
}
for(no=0;no<100;++no)
{if(buf[no]=='0')
dec[no]=0;
if(buf[no]=='1')
dec[no]=1;
}
las[0]=8*dec[0]+4*dec[1]+2*dec[2]+dec[3];
las[1]=8*dec[4]+4*dec[5]+2*dec[6]+dec[7];
las[2]=8*dec[8]+4*dec[9]+2*dec[10]+dec[11];
las[3]=8*dec[12]+4*dec[13]+2*dec[14]+dec[15];
las[4]=8*dec[16]+4*dec[17]+2*dec[18]+dec[19];
las[5]=8*dec[20]+4*dec[21]+2*dec[22]+dec[23];
las[6]=8*dec[24]+4*dec[25]+2*dec[26]+dec[27];
las[7]=8*dec[28]+4*dec[29]+2*dec[30]+dec[31];
for(n=0;n<8;++n)
{
switch(las[n])
{
case 10: lass[n]='A';break;
case 11: lass[n]='B';break;
case 12: lass[n]='C';break;
case 13: lass[n]='D';break;
case 14: lass[n]='E';break;
case 15: lass[n]='F';break;
default :lass[n]=las[n]+48;break;
}
}
printf("0X%c%c%c%c%c%c%c%c\n",lass[0],lass[1],lass[2],lass[3],lass[4],lass[5],lass[6],lass[7]);
}
fclose(fp);
}
[此贴子已经被作者于2007-8-26 20:49:22编辑过]