

🌟 第1题:二进制怪兽的真实身份
🎯 正确答案:B(-3,-125)
1、🧠 故事
(1)在"二进制森林"里,有两个神秘怪兽:
👉 它们长这样:
10000011
(2)魔法规则:
-
最高位是 1 → 说明是负数
-
要恢复它的真实值 → 用"补码还原术"
2、🪄 解法步骤
(1)原码直接读:
10000011
等于-3
(2)补码转换:
1️⃣ 取反 11111100
2️⃣ +1 11111101
3️⃣ 转十进制 -(127-2)= -125
(3)🎉 所以答案是 B
🌟 第2题:编码王国的真假判断
🎯 正确答案:D
1、🧠 故事
(1)编码王国有4条规则:
| 规则 | 是否正确 |
|---|---|
| 无符号数:原码=真值 | ✅ |
| 正数反码=自己 | ✅ |
| 负数反码≠补码 | ✅ |
| ❌反码 = 原码按位取反 | ❌(错在细节) |
👉 错误点:
负数反码不是随便来的,是符号位不变,其它位取反
(2)🎉 所以选 D
🌟 第3题:进制变形魔法(16→8)
🎯 正确答案:A(2620045)
1、🧠 故事
数字王子:B2025(16进制)
要变身成8进制!
2、🪄 方法
👉 16进制 → 二进制 → 3位一组 → 8进制
(1)步骤:
B = 1011
2 = 0010
0 = 0000
2 = 0010
5 = 0101
(2)拼起来:
1011 0010 0000 0010 0101
(3)👉 每3位分组 → 转8进制
🎉 得到:2620045
🌟 第4题:小数二进制大冒险
🎯 正确答案:A
1、🧠 故事
数字勇士:625.625
2、🪄 拆分:
(1)整数部分 625:
不断 ÷2
建立数组,从后向前读结果。
1001110001
(2)小数部分 0.625:
不断 ×2
(3)计算:
0.625×2=1.25 → 1
0.25×2=0.5 → 0
0.5×2=1.0 → 1
👉 小数 =
.101
(4)最终:
👉 1001110001.101
3、🎉 选 A
🌟 第5题:逻辑运算大战
🎯 正确答案:D
1、🧠 故事
数字们在打架:
5 && 3 // 两侧都是真,结果为真 1 不是0 错误
5 || 3 // 至少一侧是真,结果为真 1 不是11 错误
2、二进制:
5 = 0101 //5 & 3
3 = 0011
--------
0001 //结果是1,正确
5 = 0101 //5 | 3
3 = 0011
--------
0111 //结果是7不是8,错误
3、只有 D 正确 ✔️
🌟 第6题:右移魔法(补码)
🎯 正确答案:B(-2)
1、🧠 故事
(1)一个负数:
11111101(补码)
👉 右移1位(>>1)
(2)规则:
👉 符号位补1(因为是负数)
(3)结果:
11111110
(4)👉 转回十进制 = -2
2、🎉 选 B
🌟 第7题:字符串迷宫
🎯 正确答案:C
1、🧠 故事
程序拼乐高:
最终输出结果是:
🎉 选 C、👉 112345chenadai
2、🎉 字符串替换操作:
cpp
string s="1234@@chenadai"; //定义 s
string str="12345"; //定义str
s.replace(1,5,str); //替换 s 中:234@@ 为str:"12345"
cout<<s<<endl; //输出112345chenadai
🌟 第8题:按位或(|)的魔法
🎯 正确答案:A
1、🧠 故事
(1)魔法:
a | 10
(2)👉 10(二进制) = 1010
作用:
👉 把 第2位(从右往左)变成1
👉 把 第4位(从右往左)变成1
(3)所以:
👉 强制"第二位 = 1",是正确的。
2、🎉 选 A
🚀 总结:
1、🧩 基础类型
进制转换(3、4)
编码(1、2)
2、⚔️ 运算类型
位运算(5、6、8)
3、🎯 程序理解
字符串(7)






