c++输入二进制数
作者:野牛程序员:2023-06-28 08:01:45 C++阅读 2830
在C++中,无法直接使用cin将二进制数作为整数输入。需要将输入的二进制数作为字符串接收,然后使用适当的方法将其转换为整数。以下是一个示例:
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int binaryToDecimal(string binary) {
int decimal = 0;
int size = binary.size();
for (int i = 0; i < size; i++) {
if (binary[i] == '1') {
decimal += pow(2, size - 1 - i);
}
}
return decimal;
}
int main() {
string binary;
cout << "Enter a binary number: ";
cin >> binary;
int decimal = binaryToDecimal(binary);
cout << "The decimal equivalent is: " << decimal << endl;
return 0;
}在上面的示例中,用户将被要求输入一个二进制数。然后,该二进制数将作为字符串存储在变量 binary 中。使用 binaryToDecimal 函数将二进制数转换为十进制数,然后将结果输出。
例如,如果用户输入 10101,程序将输出:
The decimal equivalent is: 21
请注意,这只是将二进制数转换为十进制数的基本方法。在实际应用中,你可能需要添加更多的错误检查和处理无效输入的逻辑。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

