
面试考官邢老师为您分享以下优质知识
将整数转换为二进制的方法主要有以下两种:
一、使用内置函数(推荐)
Python 提供了 `bin()` 函数,可快速将整数转换为二进制字符串。例如:
```python
num = 10
binary = bin(num)[2:] 去除前缀 '0b'
print(binary) 输出: 1010
```
若需固定位数的二进制表示,可使用 `zfill()` 方法:
```python
binary_padded = bin(num)[2:].zfill(8) 补齐8位
print(binary_padded) 输出: 00001010
```
二、手动实现(除2取余法)
通过递归或迭代的方式,将整数按2取余并逆序排列,可手动转换二进制。以下是C语言示例:
```c
include
include
// 递归实现
void BinaryRecursion(int n) {
if (n == 0) return;
int a = n % 2;
BinaryRecursion(n / 2);
printf("%d", a);
}
// 迭代实现
void BinaryVector(int n) {
int temp = n;
while (temp >
0) {
printf("%d", temp % 2);
temp /= 2;
}
printf("n");
}
int main() {
int num = 10;
BinaryRecursion(num); // 输出: 1010
BinaryVector(num);// 输出: 1010
return 0;
}
```
步骤说明:
用2整除整数,记录余数(二进制位)。
将余数从下到上排列,形成二进制数。
Python的 `bin()` 返回结果以 `0b` 开头,需手动去除。
三、其他方法
位运算:通过位与运算逐位提取二进制位(如C语言中的 `bitset`)。
短除法:类似数学中的短除法,逐步除以2并记录余数。
以上方法均可实现整数到二进制的转换,选择时可根据编程语言和需求决定。