C++十进制转换为二进制

C++十进制转换为二进制

C++十进制转换为二进制

在计算机科学中,常常需要进行不同进制之间的转换,其中最常见的就是十进制到二进制的转换。在C++语言中,我们可以使用不同的方法来实现这一转换。

1. 方法一:使用位运算

#include <iostream>
#include <stack>

using namespace std;

stack<int> decimalToBinary(int decimal) {
    stack<int> binaryStack;

    while (decimal > 0) {
        int remainder = decimal % 2;
        binaryStack.push(remainder);
        decimal = decimal / 2;
    }

    return binaryStack;
}

int main() {
    int decimal;
    cout << "请输入一个十进制数: ";
    cin >> decimal;

    stack<int> binaryStack = decimalToBinary(decimal);

    cout << "转换为二进制数为: ";
    while (!binaryStack.empty()) {
        cout << binaryStack.top();
        binaryStack.pop();
    }

    cout << endl;

    return 0;
}

运行结果示例:

请输入一个十进制数: 10
转换为二进制数为: 1010

2. 方法二:使用递归

#include <iostream>

using namespace std;

void decimalToBinary(int decimal) {
    if (decimal == 0) {
        return;
    }

    int remainder = decimal % 2;
    decimalToBinary(decimal / 2);
    cout << remainder;
}

int main() {
    int decimal;
    cout << "请输入一个十进制数: ";
    cin >> decimal;

    cout << "转换为二进制数为: ";
    decimalToBinary(decimal);

    cout << endl;

    return 0;
}

运行结果示例:

请输入一个十进制数: 15
转换为二进制数为: 1111

通过以上两种方法,我们可以在C++中实现将十进制数转换为二进制数的功能。无论是使用位运算还是递归,都可以轻松地完成这一任务。在实际应用中,可以根据具体需求选择合适的方法来实现进制转换。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程