c语言:将任意一个十进制数转换成二进制数,按位存放到数组中,然后输出。
时间: 2023-06-20 08:04:37 浏览: 405
下面是一个将十进制数转换成二进制数,并按位存放到数组中的C语言代码:
```c
#include <stdio.h>
int main() {
int decimal, binary[32], i = 0;
printf("Enter a decimal number: ");
scanf("%d", &decimal);
while (decimal > 0) {
binary[i] = decimal % 2;
decimal /= 2;
i++;
}
printf("Binary number is: ");
for (int j = i - 1; j >= 0; j--) {
printf("%d", binary[j]);
}
return 0;
}
```
代码中,首先要从用户输入中获取一个十进制数。然后使用while循环将十进制数转换成二进制数,并将每个二进制位存放到数组中。最后使用for循环输出数组中存放的二进制数。
相关问题
以c语言初学者水平编一段代码。试题详情: 将任意一个十进制数转换成二进制数,按位存放到数组中,然后输出。 输入提示: 输入一个整数,数据范围:0-890000000000。 输出提示: 输出仅一行,为输入的二进制数。 输入样本: 78 输出样本: 1001110
以下是代码实现:
#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 位的二进制数。
26.将任意一个十进制数转换成二进制.并将每位二进制数顺序存放到数组中.然后 输出。c语言
好的,这是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入一个十进制数:");
scanf("%d", &n);
int binary[32]; // 用于存储二进制数的数组
int i = 0;
while (n > 0) {
binary[i] = n % 2; // 求余数,存储到数组
n /= 2; // 整除2,继续求下一位
i++;
}
printf("二进制数为:");
for (int j = i-1; j >= 0; j--) {
printf("%d", binary[j]); // 倒序输出二进制数
}
printf("\n");
return 0;
}
```
运行程序,输入一个十进制数,例如 26,输出如下:
```
请输入一个十进制数:26
二进制数为:11010
```
代码解释:
1. 首先,定义一个 `binary` 数组,用于存储二进制数的每一位。
2. 使用 `while` 循环,从低位到高位依次求出该十进制数的二进制数,并存储到 `binary` 数组中。
3. 最后,使用 `for` 循环倒序输出 `binary` 数组中的每一位二进制数,得到最终的二进制数。
阅读全文