十进制转二进制C++
时间: 2023-09-11 17:03:05 浏览: 132
十进制转换成二进制c++
要将十进制数转换为二进制数,你可以使用以下 C++ 代码:
```cpp
#include <iostream>
#include <stack>
using namespace std;
void decimalToBinary(int decimal) {
stack<int> binaryStack;
while (decimal > 0) {
int remainder = decimal % 2;
binaryStack.push(remainder);
decimal /= 2;
}
while (!binaryStack.empty()) {
cout << binaryStack.top();
binaryStack.pop();
}
}
int main() {
int decimal;
cout << "Enter a decimal number: ";
cin >> decimal;
cout << "Binary representation: ";
decimalToBinary(decimal);
return 0;
}
```
这段代码首先定义了一个函数 `decimalToBinary`,它使用栈(`stack`)来存储二进制数的各个位。在 `while` 循环中,我们将十进制数除以 2 取余数,并将余数压入栈中,然后将十进制数除以 2。这一过程会一直进行直到十进制数变为 0。
接下来,在第二个 `while` 循环中,我们从栈中依次弹出位,并输出到控制台上,这样就得到了二进制表示。
在 `main` 函数中,我们首先获取用户输入的十进制数,然后调用 `decimalToBinary` 函数将其转换为二进制数,并输出结果。
请注意,这段代码假定用户输入的是一个正整数。如果需要处理负数或小数,你可能需要进行额外的处理。
阅读全文