C语言——将十进制数转换成二进制数
方法:除 2 取余,逆序排列
原理:用 2 整除十进制整数,可以得到一个商和余数;再用 2 去除商,又会得到一个商和余数,如此进行,直到商为小于 1 时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
如上图所示,转换成二进制就是对2进行取余操作,最后将所得的余数进行倒序排列就是对应的二进制数了。
代码:
#include<stdio.h>int main(){// 将一个十进制数转换成二进制数(无符号位)int number;int flag;int i = 0;int num[10];printf("请输入要转换的十进制数:");scanf_s("%d", &number);while (number != 0 && number != 1) {flag = number % 2;num[i++] = flag;number = number / 2;printf("number:%d", number);printf("\n");}num[i++] = number;printf("该十进制数的二进制数是:");for (int j = i - 1; j >=0 ; j--)printf("%d", num[j]);return 0;}