c++先定义一个十进制转换成二进制的函数,然后输入任意两个数,调用函数把这两个数转换成二进制形式再相加
时间: 2024-12-14 22:28:24 浏览: 5
C++计算一个数字的二进制中0或1的个数原理及代码
5星 · 资源好评率100%
在 C++ 中,你可以首先定义一个通用的函数 `decimalToBinary` 来将十进制整数转换为二进制字符串。接着,创建另一个函数 `addBinaryNumbers` 来接受两个二进制字符串作为输入,先将它们分别转换回十进制,相加后再转换回二进制并返回结果。以下是这个功能的基本实现:
```cpp
#include <iostream>
#include <string>
// 函数用于将十进制转为二进制字符串
std::string decimalToBinary(int decimal) {
std::string binary;
while (decimal > 0) {
binary = std::to_string(decimal % 2) + binary;
decimal /= 2;
}
return binary;
}
// 主函数,接收两个二进制字符串相加
std::string addBinaryNumbers(const std::string &num1, const std::string &num2) {
int dec1 = std::stoi(num1, nullptr, 2);
int dec2 = std::stoi(num2, nullptr, 2);
int sum = dec1 + dec2;
return decimalToBinary(sum);
}
int main() {
// 输入两个十进制数转换为二进制
std::cout << "Enter first number in decimal: ";
int num1_decimal;
std::cin >> num1_decimal;
std::string num1_binary = decimalToBinary(num1_decimal);
std::cout << "Enter second number in decimal: ";
int num2_decimal;
std::cin >> num2_decimal;
std::string num2_binary = decimalToBinary(num2_decimal);
// 相加并显示结果
std::string result_binary = addBinaryNumbers(num1_binary, num2_binary);
std::cout << "Sum in binary: " << result_binary << std::endl;
return 0;
}
```
在这个程序中,用户可以依次输入两个十进制数,程序会先将其转换为二进制,然后计算它们的和,最后输出加法的结果。
阅读全文