C++十进制转化为二进制的程序
时间: 2023-03-14 22:05:37 浏览: 111
二进制转换程序通常使用除2取余法来实现。例如,将十进制数字55转换为二进制,可以先将55除以2取余,得到1余1,然后将余数1作为最低位,将商27除以2取余,得到13余1,然后将余数1作为次低位,依此类推,最终得到110111作为55的二进制表示。
相关问题
C++十进制转化为二进制
在C++中,将十进制整数转换为二进制可以使用内建函数`bitset`或者手动通过循环除以2取余数的方式实现。以下是两种方法:
1. 使用`bitset`库:
```cpp
#include <bitset>
#include <iostream>
int decimalToBinary(int num) {
std::bitset<8> binary(num); // 假设我们只关心8位二进制,你可以改变这个长度
std::cout << "Binary representation: " << binary.to_string() << std::endl;
return binary.to_ulong(); // 如果需要返回二进制整数值
}
int main() {
int decimal = 42;
decimalToBinary(decimal);
return 0;
}
```
2. 手动转换:
```cpp
int decimalToBinary(int num) {
std::string binary;
while (num > 0) {
binary = std::to_string(num % 2) + binary; // 将余数添加到前面
num /= 2;
}
std::cout << "Binary representation: " << binary << std::endl;
return stoi(binary); // 如果需要返回二进制整数值
}
int main() {
int decimal = 42;
decimalToBinary(decimal);
return 0;
}
```
c++十进制转化为二进制
可以使用以下代码将十进制数转换为二进制数:
```c++
#include <iostream>
using namespace std;
int main()
{
int decimal, binary[32], i = 0;
cout << "Enter a decimal number: ";
cin >> decimal;
while (decimal > 0) {
binary[i] = decimal % 2;
decimal /= 2;
i++;
}
cout << "Binary number: ";
for (int j = i - 1; j >= 0; j--) {
cout << binary[j];
}
return 0;
}
```
该程序首先要求用户输入一个十进制数,然后使用 while 循环将其转换为二进制数,并将其存储在数组 binary 中。最后,程序将数组中的二进制数逆序输出,以显示正确的二进制表示形式。
阅读全文