您的位置:首页 > 其它

一个函数把十进制整数转换为二进制…

2014-01-13 16:10 375 查看
#include<stdio.h>

int dec_to_bin(int num)

{

 int i,d,re,bn;

 i=0;bn=0;

 d=num/2;

 re=num%2;

 bn|=re;

 while(d!=0)

 {

  i++;re=d%2;

  bn|=re<<i;

  d=d/2;

 }

 return bn;

}

void print_bin(int b,int size)

{

 int I=0;

 for(I=0;I<size*8;I++)

 {

  if(
b&(1<<(size*8-1))==1)

  printf("1");

  else

   printf("0");

  b<<=1;

 }

}

main()

{

 int num,bn;

 printf("please input decimal number:\n");

 scanf("%d",&num);

 bn=dec_to_bin(abs(num));

 if(num<0)printf("-");

 print_bin(bn,sizeof(int));

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐