不使用(a+b)/2这种方式,求两个数的平均值
2015-10-25 17:39
169 查看
#include<stdio.h> #include<stdlib.h> int change_int(int a, int b) //求平均数 { int c = 1, d = 1; c = a&c; //求a的右侧第一位,看是否为奇数, d = b&d; //求b的右侧第一位,看是否为奇数, a >>= 1; b >>= 1; a = a + b; if ((c&d) == 1) //如果两个数均为奇数,则补1 a = a + 1; return a; //返回平均数 } int main() { int a,b; printf("please enter a and b:"); scanf("%d%d",&a,&b); //对a,b初始化,即输入想要求平均数的两个数 printf("%d\n", change_int(a,b)); //调用函数并输出 system("pause"); return 0; }本文只是在下在学习过程自己的想法,只能实现简单功能,可能还没考虑到程序的优化,与大神写出来的代码还有一定差距,如果那位大神发现了问题,请您不吝赐教,如果您还有更好的方法,不妨分享分享,谢谢!
本文出自 “分享中进步” 博客,请务必保留此出处http://xmwen1.blog.51cto.com/10730069/1706066
相关文章推荐
- ssh远程打开ubuntu的vino-server
- Eclipse快捷键 10个最有用的快捷键
- 基本概念复习
- codeforces 570A
- 软考路之算法汇总
- excel中的表定义导入到powerdesigner
- 用for语句设置密码
- Xcode升级后,轻松解决插件失效问题
- C复习手记(Day1)
- 全球唯一标示符(转)
- web前端之HTML中的框架
- UVA-11478 Halum (差分约束系统)
- 杨辉三角
- 云计算
- iOS设计模式解析(二) —— 原型
- java五分钟O(∩_∩)O哈哈~继承好坑
- 《深入理解计算机系统》第四章家庭作业
- HTML元素1 - 链接<a>
- web前端之HTML中的表单和输入
- C 删除字符串1字符串2