请问编程中的位运算符怎么用 例如n&1 和n>>1

如题所述

&:与 例如0&0值为0、0&1值为0等;
>> 为右移 将N变成二进制的数 依次向右移 1就是移一位 整数高位补0 负数高位补1
<< 就是左移 和右移相似 这个就是低位 都补0
例如 int i=-1;-1 为1000 0000 0000 0001 i>>2 就为 1110 0000 0000 0000
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-05-18
直接像你写的那样就可以了,只是系统在执行的时候以二进制的形式进行操作。比如说:
n = 2;
n&1;
它会如下执行:
00000010
&00000001
----------------------
00000000
结果就为0;

请问编程中的位运算符怎么用 例如n&1 和n>>1
&:与 例如0&0值为0、0&1值为0等;>> 为右移 将N变成二进制的数 依次向右移 1就是移一位 整数高位补0 负数高位补1 << 就是左移 和右移相似 这个就是低位 都补0 例如 int i=-1;-1 为1000 0000 0000 0001 i>>2 就为 1110 0000 0000 0000 ...

C++中n&1是什么意思
n为偶数时,相应的最低位为0,n&1的结果就是0,这里也可以写 n&1 ==1 或者写 n%2 == 1 或者写 n%2

int k=0; while(n!=0) { if(n&1) a[k]=1; n>>=1; k++; }
int a[32]={0};而这段代码的作用就是把n中为1的比特位映射到数组a中,比如:十进制的11的二进制表示是1011,则 a[0]=1,a[1]=1,a[3]=1,其它下标处的值都是0。则a[31]~a[0]就是一个整数n的二进制表示了。

c语言中 (n & 1)什么意思啊
这应该是一段控制输出信息的字符控制信息。 使用%1f不明显,直接看示例。include<stdio.h> int main(){float f= 1.1f;printf("f=%f\\n", f);printf("f=%10f\\n", f);return 0;}程序执行效果:说明:%1f或者%10f,里面的数字指的是最小域宽限定符,简单的说即数值输出后要有多少个字符。

C++中运算符>>,&的使用
1、首先放一下原题目:   请实现一个函数,输入一个整数(以二进制串形式),输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。   熟悉>>,&这两个运算符的话,这个题目就不难。相信也有...

c语言:编程:判断一个数的奇偶性
include<stdio.h> main(){ inta;printf("输入一个整数:");scanf("%d",&a);if(a%2==0){ printf("为偶数");} else { printf("为奇数");} return0;}

if ((n&1) == 1) break;什么意思
如果n是奇数,就break。n&1是n和1做“按位与”运算,1的二进制只有末位是1,所以n&1就是只保留n的末位(二进制)。n&1就表示了n的奇偶性。

相似回答