锦州银行客服电话号码:c语言中判断奇偶的问题

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/06 11:35:28
if(n&1)是怎么判断n是否为奇数的?是进行按位与运算因为奇数的二进制最低位是1,1&1==1为真
偶数低位为0,0&1==0为假 么?
为什么只进行最底位的按位与运算啊?如果是10&1结果是0还是1啊?

在计算机里,数都是二进制的,从最右面开始,分别是2的0次幂、1次幂……n次幂。那么从2的1次幂开始到2的n次幂相加和是2的n+1次幂-2(n>=1,因为我们是从2的0次幂开始的)。这个和一定是偶数。那么这个数本身是奇还是偶,就取决于2的0次幂这位,那如果这位是1则这个数为奇,否则为偶。
10在机器里的表示为1010,那它和1(0001)”与“必定为0。即规律为:和1“与”结果是0则这个数为偶否则为奇。

应为1在内存中是以00000001类似的格式存储的
00000010&00000001=00000000;