位运算-1
您的姓名:
1. 位运算的操作对象是()?
A、浮点数
B、字符串
C、整数
D、布尔值
2. 表达式 12 & 10 的结果是()?
A、8
B、10
C、14
D、2
3. 表达式 12 | 10 的结果是()?
A、8
B、10
C、14
D、2
4. 表达式 14 ^ 7 的结果是()?
A、7
B、9
C、21
D、11
5. 表达式 5 ^ 5 的结果是()?
A、5
B、0
C、10
D、1
6. 表达式 5 << 2 的结果是()?
A、5
B、10
C、15
D、20
7. 表达式 20 >> 2 的结果是()?
A、5
B、10
C、4
D、8
8. 以下哪种位运算可以最快地判断一个整数n是否为奇数()?
A、n % 2 == 1
B、n & 1
C、n / 2 * 2 != n
D、n | 1 == n
9. 若 n = 12(二进制1100),则 n & (n-1) 的结果及该操作的作用是()?
A、4,取出最低位的1
B、8,清除最低位的1
C、4,清除最低位的1
D、8,取出最低位的1
10. 设 a=3, b=5,执行 a^=b; b^=a; a^=b; 后,a和b的值分别是()?
A、a=3, b=5
B、a=5, b=5
C、a=3, b=3
D、a=5, b=3
11. 关于异或运算(^)的性质,以下正确的有()?
A、任何数异或自己等于0(a ^ a = 0)
B、任何数异或0等于自己(a ^ 0 = a)
C、异或运算满足交换律(a ^ b = b ^ a)
D、异或运算满足结合律((a^b)^c = a^(b^c))
E、任何数异或1等于自己(a ^ 1 = a)
12. 以下属于位运算常用技巧的有()?
A、n & 1 判断奇偶
B、n & (n-1) 清除最低位的1
C、n & (-n) 取最低位的1(lowbit)
D、a^=b; b^=a; a^=b; 交换两数
E、n << k 等价于 n 乘以2的k次方
13. 关于左移和右移运算的说法,正确的有()?
A、左移n位相当于乘以2的n次方(n << k = n × 2^k)
B、右移n位相当于除以2的n次方并向下取整(n >> k ≈ n / 2^k)
C、左移时右边补0,左边高位丢弃
D、右移时左边一定补0
E、左移和右移都不改变原变量的值
14. 以下属于C/C++中位运算符的有()?
A、&(按位与)
B、|(按位或)
C、^(按位异或)
D、~(按位取反)
E、&&(逻辑与)
15. 位运算只能用于整数类型,不能对浮点数进行位运算。
对
错
16. 在C/C++中,将一个整数左移n位(n << k)等价于将该整数乘以2的n次方。
对
错
17. 在C/C++中,对有符号整数0执行按位取反(~0),结果为-1。
对
错
18. 表达式 10 ^ 3 ^ 10 的结果是?
19. 若 n = 10(二进制1010),则 n & (-n) 的结果是?
20. 统计一个无符号整数n的二进制中1的个数,常用的位运算技巧是反复执行操作?
关闭
更多问卷
复制此问卷