当前位置: 代码迷 >> C语言 >> [求助]二进制输出为十六进制
  详细解决方案

[求助]二进制输出为十六进制

热度:401   发布时间:2007-08-26 20:35:00.0
[求助]二进制输出为十六进制

b.txt内容简略如下:
00000000010100100011111110100001
00000001101100011000000001001110
10000001000010001000000000111100
00000001100000000000000011011010

00000000001100000011111110011111
00000000111101101000000001110000
10000001101111101000000000101110
00000001100100010000000011011101

转换成十六进制输出每行开头为0X,第五行换行符也要输出。

搜索更多相关的解决方案: 二进制  十六进制  输出  

----------------解决方案--------------------------------------------------------
现在写了一个程序,好麻烦,乱读,不是逐行读,是跳行读。
且不输出第五行的换行符。唉!
----------------解决方案--------------------------------------------------------
我看到过了你问题,你能把源程序帖出来么?我也许帮不了 ,可以看看么
----------------解决方案--------------------------------------------------------
回复:(栖柏)我看到过了你问题,你能把源程序帖出来...

#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编辑过]


----------------解决方案--------------------------------------------------------
http://hi.baidu.com/ahpo/blog/item/0400fb2a3d2bcc9b033bf629
这你看过了么?
----------------解决方案--------------------------------------------------------
看过了,我改了一下,但是输出的结果有误。可能是我改的不对
----------------解决方案--------------------------------------------------------
感觉你写的……
太繁了
有函数用呀
----------------解决方案--------------------------------------------------------
  相关解决方案