```cpp #include <iostream> #include <bitset> // 用于处理二进制表示 int main() { int num; std::cin >> num; // 读取输入的整数 // 使用bitset将整数转换为32位二进制补码表示 std::bitset<32> binary(num); // 32表示位数 std::cout << binary << std::endl; // 输出二进制补码 return 0; } ``` 代码解释: 1. `#include <bitset>` 引入 bitset 头文件,用于处理二进制数。 2. `std::bitset<32> binary(num);` 创建一个32位的 bitset 对象,并用整数 `num` 初始化它。这会自动将整数转换为二进制补码形式。 3. `std::cout << binary << std::endl;` 直接输出 bitset 对象,它会以二进制字符串形式显示。 额外需要注意的逻辑点: 1. 输入整数范围:`int` 类型通常是32位,但具数取决于编译器和平台,确保题目明确要求32位补码。 2. 补码表示:bitset 会自动处理负数的补码转换,无需手动计算。 3. 输出格式:bitset 输出的是固定长度的二进制字符串,高位在前,低位在后,没有前缀(如 "0b")。 [2025-05-25 17:38:20 | AI写代码神器 | 289点数解答]