【2012百度之星资格赛】A:百度计算器的加法

【2012百度之星资格赛】A:百度计算器的加法
时间限制: 
 1000ms 
 内存限制: 
 10000kB
描述

百度框计算中提供了计算器这个功能,模拟计算器中的复杂功能,我们最先需要解决的就是实现加法模块。今天就给你个机会,和百度计算器一样,计算一下十以内的加法吧。

输入
仅有一组数据,包含两个正整数,分别为a, b(0 <= a, b <= 10)
输出
一个正整数,暨输入a, b后对应的a+b的计算结果
样例输入
5 2
样例输出
7
[html]   view plain copy
  1. #include <stdio.h>  
  2. #include <stdlib.h>  
  3. int Add(int a,int b)  
  4. {  
  5.     int jw=a&b;  
  6.     int jg=a^b;  
  7.     while(jw)  
  8.     {  
  9.        int t_a=jg;  
  10.        int t_b=jw<<1;  
  11.        jw=t_a&t_b;  
  12.        jg=t_a^t_b;  
  13.      }  
  14.     return jg;  
  15. }  
  16.   
  17. int main(int argc, char* argv[])   
  18. {  
  19.     int a,b,c;  
  20.     scanf("%d",&a);  
  21.     scanf("%d",&b);  
  22.     c=Add(a,b);  
  23.     printf("%d",c);  
  24.           
  25.       return 0;  
  26. }  
这是一位博客主(见下面的网址)写的,我觉得这个算法是比较好的,利用位操作来代替一般的直接加法,效率要比较高。
参考来源:http://blog.csdn.net/tianshuai11/article/details/7616495
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值