如何用c语言编写将十进制的数转换成二进制数的程序

2024-11-14 09:11:28
推荐回答(1个)
回答1:

简单办法是用联合体,直接打印出来。
typedef union DANDB {
unsigned long int i; // 存放十进制数
unsigned char c[4]; // 按字元(bit) 直接打印它出来
} DandB;

int main()
{
int i,j;
DandB v; // v 是这种联合体变量
printf("Please enter a integer data\n");
scanf("%d",&v.i); // 输入正整数
// v.i = 15;
for (i=3;i>=0;i--){
for (j=7;j>=0;j--)
printf("%1d", (v.c[i] >> j) & 1); // 按字元把32位二进制打印出来
}
===
手工计算,要不断除2取余,获得所有位,再打印出来。