编程-十进制整数转换为二进制

 

代码
/*
2. 数制转换
问题描述: 
在32位处理器上,将任一整数转换为二进制形式。
要求实现函数: 
void DecToBin (unsigned int iDec, char pBin[32])
输入:iDec 需要转换的十进制整数
输出:pBin 转换为二进制后的字符串,高位在左边,不足32位补0
示例 
输入:123  输出:{“00000000000000000000000001111011”}
*/
#include
<stdio.h>
void DecToBin (unsigned int iDec, char pBin[32])
{
    unsigned 
int temp;
    
int i=31;
    
while(i>=0)
    {
        temp
=iDec;
        temp
=temp>>i;
        temp
=temp&1;
        pBin[
32-1-i]=temp+'0';
        i
--;    
    }
}
main()
{
    unsigned 
int a=0xFFFFFFFF;
    
char pBin[33];
    
for(int i=0;i<33;i++)
    {
        pBin[i]
='\0';
    }
    DecToBin (a, pBin);
    printf(
"%s\n",pBin);
}

 

posted @ 2010-06-01 00:30  tungli  阅读(638)  评论(0)    收藏  举报