a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 52|回复: 0

[C语言] 编程十进制整数转换为二进制

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
  数制转换- p' q7 {) _3 j: G* e8 `+ R$ y$ N
  问题描述:9 p/ O: U% o+ Z# a3 I0 ]
  在32位处理器上,将任一整数转换为二进制形式。
( y+ d& F2 }6 ~9 g; N* g  要求实现函数:; X& L2 `- }- J& `# }+ T
  void DecToBin (unsigned int iDec, char pBin[32])
5 X* K' h3 a1 N0 C5 }  输入:iDec 需要转换的十进制整数
: I6 T& G' b- S. V, r  输出:pBin 转换为二进制后的字符串,高位在左边,不足32位补0
& p( T& h. [# [. f, e) _  示例
% `# D; x' Y8 x1 ^# Z) _1 D% l: K  输入:123  输出:{“00000000000000000000000001111011”}1 r* k! f$ e& J7 k
  */" n" w3 M/ m+ i6 j: q' Z
  #include
' Q4 e$ @+ h4 B9 Z$ T) y  void DecToBin (unsigned int iDec, char pBin[32])! _# N( r9 m% R! q6 ?" V4 x
  {- C. N) ~$ u1 i; F& Z. n( ~8 \
  unsigned int temp;
6 N7 v3 c: t' a5 L  f6 E  int i=31;2 r9 v" q/ L, v
  while(i>=0)9 P$ [5 [4 j4 z
  {- \9 r, w0 J; Y9 p- L
  temp=iDec;
) |+ E+ v- g' L+ Q3 m  temp=temp>>i;( Q5 n9 X- n/ P) @: D' x
  temp=temp&1;
. n' R. P% k5 y9 H/ F4 o6 g  pBin[32-1-i]=temp+'0';
4 ]; ^; H# O$ d) K* b  i--;" _7 c: J1 w" W4 W% c
  }
( N' i8 o+ `% t# I1 C* b  }
9 _+ Y. B. ]! t+ H  main()4 j5 G+ Y4 M9 h0 u3 U, }
  {
3 s4 e; a$ r3 i! c  K6 B  unsigned int a=0xFFFFFFFF;
% m7 Y" m( N: K5 h# q  char pBin[33];
8 `3 _1 C5 C( c/ M* X. |. _- S3 P  for(int i=0;i
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-18 13:03 , Processed in 0.319895 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表