中级编程通关练习题 #6 – 二进制操作符做加法

给定两个正整数 a 和 b,使用二进制操作符而不是加法操作符来计算它们的和。 输入样例: a = 105,b = 201 输出样例: 306 算法思路: 方法一:从低位到高位逐一计算每个bit相加之后的结果。当两个bit都是1时,使用 & 操作符可以得到进位bit值。否则,使用 ^ 操作符可以得到两个bit的和。进位bit的值使用左移操作符<<可以继续和下一个bit来计算。方法二:使用^ 操作符得到两位数值不包含同位bit都是1的相加之和 A。使用& 操作符加左移操作符<<得到进位数值 B。如果进位数值B为零,则返回前面的相加之和A,否则用A和B重复上述操作,直到B为零。