day2作业:
1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是(D)
a. 12, 77, 10
b. 12, 80, 10
c. 11, 78, 19
d. 11, 77, 19
2.二进制数加法运算的基本特点是“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。运用这一基本法则和十进制运算的类似规律,得出二进制数加法运算1001+101的结果为(C)
a. 1001
b. 1010
c. 1110
d. 1101
3.八进制754中的数码7对应的位权是(C)
a. 10^2 b. 16^1 c. 8^2 d. 2^2
4.十进制数53转换成二进制数是(B)
a. 100101
b. 110101
c.100100
d.110100
5.已知,十进制中的8在X进制中表示为11,即(10)8=(X)11。请问这个X进制具体为(B)进制
a. 6
b. 7
c. 8
d. 9
6.二进制的1000001相当十进制的④,二进制的100.001可以表示为④。
A: ① 62 ② 63 ③ 64 ④ 65
B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3
- n = 6784,以下能够获取到7 的方法有(CD)
a. n / 1000 % 100
b. n % 1000 / 100
c. n // 100 % 10
d. n // 10 % 100 // 10
8.以下表达式 10 / 4 + 23 // 4 * 2 - 30的计算结果是:-2.5。
9.写出计算机底层计算-10-20的步骤(补码计算和转换过程)
-10源码 = 10001010 -20源码 = 10010100
-10反码 = 11110101 -20反码 = 11101011
-10补码 = 11110110 -20补码 = 11101100
-10 - 20 = 11110110 + 11101100 = 111100010(补码)
结果源码:100011110 = -30
10.写代码获取数字n=1234中每一位上的数
a = 1234 // 1000
b = 1234 // 100 % 10
c = 1234 % 100 // 10
d = 1234 % 1000
11.写代码统计一个任意整数m是几位数,并且逆序打印出每一位数字。(0基础不做, 不能用字符串来做)
例如: m=123, 打印: m是3位数 3 2 1
m=45321, 打印:m是5位数 1 2 3 5 4
number = int(input('请输入一个数'))
count = 0
for i in range(0, 10):
if(number // (10 ** i) == 0):
count = i
print('number是', i, '位数')
break
for j in range(count, 0, -1):
print(number % 10)
number = number // 10