十进制转化为二进制c语言代码
时间: 2023-05-08 11:00:30 浏览: 130
C语言 十进制转换成二进制
十进制转化为二进制可以通过连续做除2和取余数的方式实现。具体操作如下:
1.定义一个变量result存储二进制结果,初始值为0;
2.定义一个变量base存储当前位权值,初始值为1;
3.循环进行十进制转二进制的操作,直到所需位数全部转化完成:
(1)每次将十进制数除以2,得到商和余数;
(2)将余数乘以当前位权值,得到此位的二进制值;
(3)将二进制值加到result中;
(4)将位权值乘以2,即向左移位一位,进入下一位的转化。
最终,result中存储的就是十进制数的二进制表示。下面是具体实现的C语言代码:
```
#include <stdio.h>
int main(){
int decimalNum, binaryNum=0, base=1, remainder;
printf("Please enter a decimal number:");
scanf("%d", &decimalNum);
while(decimalNum!=0){
remainder = decimalNum%2;
binaryNum += remainder*base;
base *= 10;
decimalNum /= 2;
}
printf("The binary number is: %d\n", binaryNum);
return 0;
}
```
在该代码中,变量decimalNum存储输入的十进制数,变量binaryNum存储转换后的二进制数,变量base是当前位的位权,变量remainder是每次除以2所得到的余数。循环中,每次将decimalNum除以2得到商和余数,将余数乘以base得到此位的二进制值,然后加到binaryNum中,并将base左移一位。当decimalNum变为0时,转换完成,输出二进制结果。
阅读全文