以c语言初学者水平编一段代码。试题详情: 将任意一个十进制数转换成二进制数,按位存放到数组中,然后输出。 输入提示: 输入一个整数,数据范围:0-890000000000。 输出提示: 输出仅一行,为输入的二进制数。 输入样本: 78 输出样本: 1001110
时间: 2024-06-06 16:10:32 浏览: 46
hexdecoct:简单的二进制将十进制数转换为十六进制,十进制和二进制数
以下是代码实现:
#include <stdio.h>
int main()
{
long long decimal;
printf("请输入一个整数:");
scanf("%lld", &decimal);
int binary[64];
int index = 0;
while (decimal > 0) {
binary[index] = decimal % 2;
decimal = decimal / 2;
index++;
}
printf("转换成二进制数为:");
for (int i = index-1; i >= 0; i--) {
printf("%d", binary[i]);
}
printf("\n");
return 0;
}
注意:因为数据范围较大,此处使用了 long long 类型来存储输入的整数。而数组 binary 的大小为 64,可以容纳 64 位的二进制数。
阅读全文