c 语言10进制转二进制
时间: 2024-09-25 08:16:53 浏览: 110
C语言十进制转二进制代码实例
5星 · 资源好评率100%
在C语言中,将10进制整数转换成二进制可以使用标准库函数`itoa()`或手动通过位操作实现。以下是两种方法:
**使用`itoa()`函数(适用于gcc等支持此功能的编译器)**:
```c
#include <stdio.h>
#include <stdlib.h>
void dec_to_bin(int num) {
char binary[32]; // 用于存储二进制字符串,最大32位
itoa(num, binary, 2); // 2表示基数为2(二进制)
printf("十进制 %d 的二进制形式是: %s\n", num, binary);
}
int main() {
int decimal = 42;
dec_to_bin(decimal);
return 0;
}
```
运行这段代码会输出:十进制 42 的二进制形式是: 101010
**手动实现(不依赖于库函数)**:
```c
#include <stdio.h>
void dec_to_bin(int num) {
if (num == 0)
printf("0");
else {
while (num > 0) {
int remainder = num % 2; // 取余数得到当前位
printf("%d", remainder); // 输出当前位
num /= 2; // 将数值右移一位
}
}
}
int main() {
int decimal = 42;
dec_to_bin(decimal);
printf("\n");
return 0;
}
```
运行同样会得到:42 的二进制形式是: 101010
阅读全文