数组 十进制转二进制
时间: 2023-11-06 15:08:17 浏览: 113
数组是一种数据结构,它可以存储多个相同类型的数据。在C语言中,数组可以用来存储一组数字或字符等数据。而十进制转二进制是一种常见的数值转换方法,可以将十进制整数转换为二进制整数。除了前面提到的“除2取余,逆序排列”法和基本写法,还可以利用数组来实现。
具体做法是,先将十进制整数不断除以2,将每次得到的余数存储到数组中,直到商为0为止。然后将数组中的元素倒序输出,即为该十进制整数对应的二进制整数。
下面是一个示例代码:
```
#include <stdio.h>
int main() {
int b, i, c = 0, a[30] = {0};
scanf("%d", &b);
if (b == 0) {
printf("0");
return 0;
}
while (b != 0) {
i = b % 2;
a[c] = i;
c++;
b = b / 2;
}
c--; //因为c代表存入数据的长度而下表范围是0~c-1
for (; c >= 0; c--) { //倒序输出即为这个数字对应的二进制
printf("%d", a[c]);
}
return 0;
}
```
相关问题
python数组十进制转二进制
Python中可以使用bin()函数将十进制数转换为二进制数,例如:
```
num = 10
binary_num = bin(num)[2:] # [2:]是为了去除bin()函数输出的0b前缀
print(binary_num)
```
输出结果为:
```
1010
```
如果需要将整个二进制数以字符串形式输出,可以使用str.format()方法,例如:
```
num = 10
binary_num = bin(num)[2:] # [2:]是为了去除bin()函数输出的0b前缀
print("十进制数{}转换为二进制数为{}".format(num, binary_num))
```
输出结果为:
```
十进制数10转换为二进制数为1010
```
c语言不用数组怎样十进制转二进制
以下是一种不使用数组的C语言实现十进制转二进制的方法:
```c
#include <stdio.h>
void decimalToBinary(int n) {
int binary = 0, i = 1;
while (n > 0) {
binary += (n % 2) * i;
n /= 2;
i *= 10;
}
printf("输出:%d\n", binary);
}
int main() {
int decimal;
printf("输入:");
scanf("%d", &decimal);
decimalToBinary(decimal);
return 0;
}
```
阅读全文