不用加减乘除做加法
引用地址: http://blog.csdn.net/caroline_wendy
题目: 写一个函数,求两个整数之和, 要求在函数体内不得使用+, -, *, /四则运算符号.
不能使用运算符号,使用位运算,第一步异或运算选位,第二步与运算进位.
代码:
-  
-  
- #include 
- #include 
-  
- using namespace std; 
-  
- int Add int( num1, intnum2) { 
-  int sum, carry; 
-  do { 
-  sum = num1 ^ num2; 
-  carry = (num1 & num2)<<1; 
-  num1 = sum; 
-  num2 = carry; 
-  }while(num2 != 0); 
-  return num1; 
- } 
-  
- int main( void)
- { 
-  int result = Add(105, 37); 
-  std::cout << "result = " << result << std::endl; 
-  return 0; 
- } 
输出:
- result = 142 
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号