八进制转二进制的 C++ 程序实现
以下是实现将八进制数转换为二进制数的 C++ 代码: ```cpp #include <iostream> #include <string> #include <algorithm> // 函数用于将单个八进制数字转换为三位二进制数字 std::string octalDigitToBinary(int digit) { std::string binary = ""; for (int i = 2; i >= 0; --i) { binary += ((digit >> i) & 1) ? '1' : '0'; } return binary; } // 函数用于将八进制字符串转换为二进制字符串 std::string octalToBinary(const std::string& octal) { std::string binary = ""; for (char c : octal) { int digit = c - '0'; binary += octalDigitToBinary(digit); } // 去除前导零 int i = 0; while (i < binary.length() - 1 && binary[i] == '0') { ++i; } return binary.substr(i); } int main() { std::string octal; std::cin >> octal; std::string binary = octalToBinary(octal); std::cout << binary << std::endl; return 0; } ``` ### 代码解释: 1. **`octalDigitToBinary` 函数**:该函数接受一个八进制数字作为参数,将其转换为三位二进制数字。通过位运算,从最高位开始依次提取每一位,并将其添加到二进制字符串中。 2. **`octalToBinary` 函数**:该函数接受一个八进制字符串作为参数,遍历字符串中的每一个字符,将其转换为对应的二进制字符串,并将这些二进制字符串连接起来。去除结果字符串的前导零。 3. **`main` 函数**:从标准输入读取一个八进制字符串,调用 `octalToBinary` 函数将其转换为二进制字符串,并将结果输出到标准输出。 ######[AI问答 | 485点数解答 | 2026-03-21 19:56:18]
- JS函数 change(n,x):轻松实现数字二进制与八进制转换及注意要点(百度文心 | 436点数解答 | 2025-04-09 22:19:11)137
- C++实现单门课程成绩管理系统:教师学生双身份操作全解析(GPT | 6361点数解答 | 2024-05-24 02:01:02)534
- C++实现:功能完备的单门课程成绩管理系统(GPT | 4293点数解答 | 2024-05-24 10:20:03)375
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)310
- C++ 实现超实用单门课程成绩管理系统,教师学生灵活使用! (GPT | 68点数解答 | 2024-05-24 10:17:09)329
- C++ 实现以 9 为基数的加法运算:代码示例与注意要点(字节豆包 | 349点数解答 | 2024-12-22 15:04:41)241
- C++ 实现:判断 N 个数在二进制、八进制、十进制、十六进制下的可能性(字节豆包 | 812点数解答 | 2026-01-02 19:28:20)46
- Python实现:判断数字在二进制、八进制、十进制、十六进制中的可能性(字节豆包 | 405点数解答 | 2026-01-02 19:43:33)42
- 巧用 Python:判断数字在二进制、八进制、十进制、十六进制中的可能性(字节豆包 | 251点数解答 | 2026-01-02 19:44:35)46
- 编程揭秘:计算 𝑛! 在 𝑃 进制下末尾零个数的方法与代码实现(DeepSeek | 549点数解答 | 2026-01-11 17:49:54)46
- 不用VS!C#工程师必知的命令行编译方法(百度文心 | 19点数解答 | 2023-11-09 17:47:59)241