递归大总结之位运算实现加法

位运算实现加法,模拟十进制加法,首先位数相加,
如19
+ 12
= 21
再加上进位
9+2进一位
21
+ 10

= 31

#include<iostream>
using namespace std;
int add(int a, int b)
{
	if (b == 0)
	{
		return a;
	}
	int wei = a ^b;
	int jinwei = (a&b) << 1;
	add(wei, jinwei);
}
int main()
{
	int a, b;
	cin >> a>>b;
	int res=add(a, b);
	cout << res << endl;
	system("pause");
}


posted @ 2017-03-07 23:31  乐天的java  阅读(68)  评论(0)    收藏  举报