学进去-教育应平等而普惠
试题
类型:操作题
难度系数:0.40
所属科目:高中信息技术
小明编写了一个字符串加密程序,功能如下:输入明文,显示加密后的密文,加密算法如下:
(1)若是大写字母,则进行字母替换,英文26个字母按键盘 QWERT 的顺序排列,从第一行到第三行连接起来再与字母表顺序进行替换,如Q用 A替换,Y用F替换,如下所示:

(2)经过字母替换后的明文,其每个字符的 8 位二进制 ASCTI 码分成两段,左边 4 位一段,右边 4 位为另一段。如字符“A”的二进制 ASCII 值为 01000001,分段后为 0100,0001;
(3)将低位段(右边 4 位)逐位取反,转化为十六进制数,如图所示;

(4)对高位段(左边 4 位)转化为十六进数;
(5)依次连接两位十六进制数,得到该字符的处理结果,如“Q”的结果为“4E”;
(6)再对第 5 步字符进行移位变换,规则为:数字保持不变,字母循环前移 3 位。(例如4E→4B, 3A→3X)
(7)将第 6 步的每个字符的密文按照明文的顺序依次连接。程序运行结果如下图所示: 实现上述功能的 Python 程序如下,请回答下列问题:

<1>按照加密算法,字符“2A”的密文是_____
<2>请在划线处填入合适代码。
def dth(num):       #十进制转 8 位二进制,高低 4 位分别处理,转成 16 进制数
i= 0; result = "";zf="0123456789ABCDEF"
_____
b=num // 16
result=zf[b]+zf[a]   
return result
mw = input("请输入待加密的字符:")
jm = ""
mm = {"Q":"A","W":"B","E":"C","R":"D","T":"E","Y":"F","U":"G","I":"H","O":"I",
"P":"J","A":"K","S":"L","D":"M","F":"N","G":"O","H":"P","J":"Q","K":"R","L":"S", "Z":"T","X":"U","C":"V","V":"W","B":"X","N":"Y","M":"Z"}
for i in range( len( mw ) ):

if "A" <= mw[i] <= "Z":

_________

else:

jm += mw[i]

result1 = "";


for i in jm:

if "0"<=j<="9":

result1+=j

else:


_________
print("密文为:",result1)
<3>加框处代码有错误,请改正______
编辑解析赚收入
收藏
|
有奖纠错

同类型试题

优质答疑

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19
我要答疑
编写解析
解析:

奖学金将在审核通过后自动发放到帐

提交
我要答疑
我要答疑:
提交