酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

C++实现4位二进制字符串转十进制数及开发建议

### 🍃思路分析 要将一个长度为 4 的二进制字符串转换为十进制数,可以根据二进制转十进制的原理,从右到左依次将每一位乘以 2 的相应次幂,然后将结果相加。 ### 💻代码实现 ```cpp #include <iostream> #include <string> #include <cmath> int binaryToDecimal(std::string binary) { int decimal = 0; for (int i = 0; i < 4; i++) { if (binary[3 - i] == '1') { decimal += std::pow(2, i); } } return decimal; } int main() { std::string binary; std::cin >> binary; int decimal = binaryToDecimal(binary); std::cout << decimal << std::endl; return 0; } ``` ### 🔍代码解释 1. **`binaryToDecimal` 函数**: - 此函数接收一个长度为 4 的二进制字符串作为参数。 - 使用 `for` 循环从右到左遍历字符串的每一位。 - 若当前位为 `'1'`,则将 2 的相应次幂累加到 `decimal` 变量中。 - 最后返回转换后的十进制数。 2. **`main` 函数**: - 读取用户输入的二进制字符串。 - 调用 `binaryToDecimal` 函数进行转换。 - 输出转换后的十进制数。 ### ⚙️复杂度分析 - **时间复杂度**:$O(4) = O(1)$,因为字符串长度固定为 4。 - **空间复杂度**:$O(1)$,只使用了常数级的额外空间。 ### 🚀开发建议 - **输入验证**:在实际应用中,可以添加输入验证,确保用户输入的字符串长度为 4 且仅包含 `'0'` 和 `'1'`。 - **通用性**:可以修改代码,使其支持任意长度的二进制字符串转换。 ######[AI写代码神器 | 493点数解答 | 2026-08-22 19:22:20]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]