变式 3:两张卡号有几位不同

👁️ 29 人浏览 💬 0 人评论 ❤️ 添加收藏

两张门禁卡的卡号低 8 位分别是 a、b(0~255)。输入 a b,输出它们的二进制有几位不一样。例如输入 5 3(101 和 011),输出:

2

思路:先把两个数合成一个 x,让「不一样」的位是 1、「一样」的位是 0,再数 x 里有几个 1。程序合成 x 时用错了运算符。

代码里以 @youci 开头的 printf 只负责运行后在画布上显示中间值,不影响输出和判题,不用改。

提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论
🔒 登录并作答后可看讨论