C语言编写一个程序,输入一个10进制整数将其转变为二进制后存储在一个数组里面并输出。
时间: 2024-09-25 14:17:19 浏览: 62
在C语言中,你可以使用`stdio.h`库来获取用户的输入,并利用位运算来转换十进制数到二进制。下面是一个简单的示例程序:
```c
#include <stdio.h>
// 函数来将十进制数转换为二进制并存入数组
void decimalToBinary(int num, int binary[], int size) {
int i = 0;
while (num > 0) {
binary[i] = num % 2; // 取余数得到当前位
num /= 2; // 将数字右移一位
i++;
}
binary[size - 1] = i; // 补充0,表示二进制数的有效位数
}
int main() {
int decimal; // 用户输入的十进制数
int binary[32]; // 存储二进制结果的数组,假设最大支持32位二进制数
printf("请输入一个10进制整数:");
scanf("%d", &decimal);
int size = sizeof(binary) / sizeof(binary[0]); // 计算数组大小
decimalToBinary(decimal, binary, size); // 转换并存储
printf("\n转换后的二进制数:");
for (int j = 0; j < size; j++) {
printf("%d", binary[j]);
}
return 0;
}
```
在这个程序中,我们首先定义了一个函数`decimalToBinary`来完成十进制到二进制的转换。用户通过`scanf`输入一个十进制数,然后调用这个函数。转换后的二进制数据存储在`binary`数组中,最后遍历数组并打印出来。
阅读全文