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;
}
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐