码迷,mamicode.com
首页 > 编程语言 > 详细

C/C++中位与运算讨论奇偶

时间:2015-03-09 10:37:44      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0

int fun(int n)
{
      return  (n&1);       //返回1表示奇数,0表示偶数。  
}

根据位与的运算规则,如果两个相应的二进制位都为1,则改为的结果值为1,否则为0.而n&1,其实关键在于最后一位二进制位,它决定着n是奇数还是偶数。即n与1进行位运算无论n有多少位,只要最后一位是1,最后一位是1则意味着n一定是个奇数(2k+...+1一定是奇数),此时与1进行位与运算返回值是1;否则返回值是0,则表示n是偶数。位运算比%运算更加快捷,学会使用位与运算判断奇偶。

总之记住:n&1返回值是1则表示n是奇数,返回值是0则表示n为偶数。

C/C++中位与运算讨论奇偶

标签:

原文地址:http://www.cnblogs.com/jzwong/p/4322808.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!