早教吧作业答案频道 -->数学-->
x&(x-1)?"yes":"no"这句表达式能判断x是否是一个2的幂么?要求用一句C表达式测试一个数是否为2的幂,应该怎么写?“若果都为1,则结果为1,否则为0.”额,那就是说如果运算得到101,那么结果就是0咯?
题目详情
x&(x-1)?"yes":"no" 这句表达式能判断x是否是一个2的幂么?
要求用一句C表达式测试一个数是否为2的幂,应该怎么写?
“若果都为1,则结果为1,否则为0.” 额,那就是说如果运算得到101,那么结果就是0咯?= =这么诡异的呀.
那这个能证明一下么 为啥x&(x-1)结果的0 1就能判断是否为2的幂呢?
要求用一句C表达式测试一个数是否为2的幂,应该怎么写?
“若果都为1,则结果为1,否则为0.” 额,那就是说如果运算得到101,那么结果就是0咯?= =这么诡异的呀.
那这个能证明一下么 为啥x&(x-1)结果的0 1就能判断是否为2的幂呢?
▼优质解答
答案和解析
你写的表达式想判断的话还差点就是把后边的yes和no交换位置
即:x&(x-1)?"no":"yes";
位运算这个其实并不难,你听我说几句:
首先来看几个数,这几个数不大,都是10以内的,我们看看它们对应的二进制数是啥
0——0
1——1
2——10
3——11
4——100
5——101
6——110
7——111
8——1000
9——1001
楼主可自己拿7,6,5 试下 肯定结果不是0 因为它们的“位数” 相同
最高位又都是1 所以肯定结果中会有1的存在,结果不可能是0,所以
x&(x-1)?"no":"yes"; 应该取得no
而4,2 它们运算后的结果和8一样,也是0.
综上,表达式x&(x-1)?"no":"yes"; 可以判断x是否是一个2的幂
即:x&(x-1)?"no":"yes";
位运算这个其实并不难,你听我说几句:
首先来看几个数,这几个数不大,都是10以内的,我们看看它们对应的二进制数是啥
0——0
1——1
2——10
3——11
4——100
5——101
6——110
7——111
8——1000
9——1001
楼主可自己拿7,6,5 试下 肯定结果不是0 因为它们的“位数” 相同
最高位又都是1 所以肯定结果中会有1的存在,结果不可能是0,所以
x&(x-1)?"no":"yes"; 应该取得no
而4,2 它们运算后的结果和8一样,也是0.
综上,表达式x&(x-1)?"no":"yes"; 可以判断x是否是一个2的幂
看了 x&(x-1)?"yes":...的网友还看了以下:
不属于空气污染造成后果的是()1.温室效应 2.酸雨 3.臭氧空洞 4.沙尘暴 2020-05-16 …
甲乙两同学分解因式x^2+mx+n,甲看错了n,分解结果为(x+2)(x+4);乙看错了m,分解结 2020-05-20 …
等式-1/2x=0.5,将等式两边同乘以,得x=-1,根据是;等式-3x+2=1-2x,将等式两边 2020-05-23 …
choose公式里要用到"="号,可是不行,有什么办法吗?我想用choose代替if函数,里边是如 2020-06-08 …
数学题有难度(1)、等式1/n²+n=1/n-1/n+1对吗?为什么?(2)、你能运用(1)中等式 2020-06-13 …
叮叮和当当两个人一共有48个苹果,叮叮又买来12个苹果,当当又买来自己苹果的7/1,此时他们的数量 2020-06-16 …
王阿姨买了一些苹果,不管是2个、3个、4个放一堆,都会剩下1个,王阿姨买了多少苹果+算式王阿姨买了 2020-07-04 …
梨树比苹果树多1/4的等量关系式画线段图表示下面各数量关系,并写出等量关系式.1.苹果比树梨树少1 2020-07-11 …
(1)算式1×2×3×…×29×30的计算结果的末尾有几个连续的0?(2)算式31×32×33×… 2020-07-17 …
计算:1+(-2)+3+(-4)+5+(-6)+……+2005+(-2006)列式+结果有答案好的 2020-07-21 …