1.使用位运算判断一个数是否是奇数
注:奇数的二进制的最后一位是1,偶数是0
eg:
num=3
0011(原)->0011(补)
0011 & 1=0001(补)=0001(原)
最后一位是1,所以是奇数
2.表达式0x13&0x17的值是(19 )
3.若x=2,y=3则x&y的结果是(2 )
解:
2(2)=0010 3(2)=0011
0010 & 0011=0010=2
4.表达式 -97 | 120 的运算结果是(-1)
解:
-97(2)=11100001(原)->10011110(反)->10011111(补)
120(2)=01111000(原反补)
10011111 & 01111000=11111111(补)=10000001= -1
5.在位运算中,操作数每右移一位,其结果相当于(B )
A.操作数乘以2 B.操作数除以2
C.操作数除以4 D.操作数乘以4
6.设x 是一个整数(16位).若要通过x|y使x低度8位置1,高8位不变,则y的二进制数是(0000000011111111 )
下面定义变量正确的是(a,d)
a. a = b = c = 10
b. a,c = 10
c. in = 20
d. num = 10; t = 20n = 6784,以下能够获取到7 的方法有(b)
a. n / 1000 % 100
b. n % 1000 / 100
c. n // 100 % 10
d. n // 10 % 100 // 10
9.以下表达式 10 / 4 + 23 // 4 * 2 - 30的计算结果是:_-17.5_____。
- 写代码获取输入数字12345中的每一位上的数字
num=12345
num1=num//10000
num2=(num%10000)//1000
num3=(num%10000)%1000//100
num4=(num%10000)%1000%100//10
num5=num%10
print(num1, num2, num3, num4, num5)
- 写出判断一个数是否能同时被3和7整除的条件语句
num=input("请输入一个数:")
num = int(num)
if((num%3==0)and(num%7==0)):
print("满足")
else:
print("不满足")
- 写出判断一个数是否能够被3或者7整除,但是不能同时被3和7整除的表达式
num=input("请输入一个数:")
num=int(num)
if((num%3==0 and num%7!=0) or (num%3!=0 and num % 7 == 0)):
print("满足")
else:
print("不满足")