将十进制数转换成二进制数(C语言)

C语言——将十进制数转换成二进制数

方法:除 2 取余,逆序排列
原理:用 2 整除十进制整数,可以得到一个商和余数;再用 2 去除商,又会得到一个商和余数,如此进行,直到商为小于 1 时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

将十进制数转换成二进制数(C语言)_第1张图片

如上图所示,转换成二进制就是对2进行取余操作,最后将所得的余数进行倒序排列就是对应的二进制数了。

代码:

#include
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;
}

你可能感兴趣的:(c语言学习,c语言)