【加試題】某字符(限 ASCII 字符)加密算法,對(duì)明文中的每個(gè)字符進(jìn)行下列加密處理:
(1)將該字符的 ASCII 碼轉(zhuǎn)換成對(duì)應(yīng)的 2 位十六進(jìn)制數(shù);
(2)將產(chǎn)生的十六進(jìn)制數(shù)互換位置;
(3)步驟(2)產(chǎn)生的二位十六進(jìn)制數(shù)即為該明文字符加密后的密文字符.小明按照上述方法,設(shè)計(jì)了一個(gè)字符串加密的 VB 程序,功能如下:?jiǎn)螕簟吧擅芪摹卑粹o Command1,
程序依次將文本框 Text1 中每個(gè)字符按上述規(guī)則進(jìn)行加密處理,連接這些加密字符,最后在文本框 Text2 中輸出加密結(jié)果.程序運(yùn)行界面如圖所示.
實(shí)現(xiàn)上述功能的 VB 程序如下:
(1)按照上述加密算法,明文“B”生成的密文是
24
24
.
(2)實(shí)現(xiàn)上述功能的 VB 程序如下,請(qǐng)?jiān)诳崭裉幪钊牒线m代碼.
Private Sub Command1_Click ( ?。?br />Dim s As String,a As String,ans As String Dim c As Integer,i As Integer
Dim c1As Integer,c2As Integer Dim d1As String,d2As String
s=Text1.Text
ans=““
For i=1 To Len(s)
a=Mid(s,i,1)
c=Asc(a)
c1=c\16
c2=
①c mod 16
①c mod 16
d1=Mid(Str(c1),2,1)'使用 Str(c1)將在字符 c1 前增加一個(gè)空字符
If c2>=10Then
②d2=Chr(c2-10+Asc(“A“))
②d2=Chr(c2-10+Asc(“A“))
Else d2=Mid(Str(c2),2,1)
ans=
③ans&d2&d1或ans+d2+d1
③ans&d2&d1或ans+d2+d1
Next i Text2.Text=ans
End Sub.