题目

小明设计一种简易的加密方式,规则如下: A)在输入的字符串中提取英文字母,作为需要加密的明文(明文字符数必须是3的倍数,不足3位的舍去) B)将明文ASCII码分成3个字节一组,顺次连接后得到24位二进制数; C)将得到的24位二进制数字按每6位一组分成4组,每组6个位; D)在C)中得到的6个位前补上2个0,得到8个字节的二进制数; E)将D)中得到的8个二进制数分别转换为十进制数; F)将得到的数字用随机产生的大写字母连接起来,以大写字母结尾 按照上述规则,设计了一个加密VB程序,功能如下:单击“加密”按钮Command1,程序依次将文本框Text1中英文字母提取,将3的倍数个的字母转换为4个数字,并输出在文本框Text2中程序运行效果如下图所示。请回答下列问题: (1) 在Text1中输入A9B20C@D1E,已知产生的随机字符顺序为英文字母表,则在Text2中显示的是。 (2) 请在划线处填入合适代码。 Private Sub Command1_ Click()     Const maxn= 100     Dim s As String, i As Integer, n As Integer     Dim ch As String, k As Integer, jg As String     Dim a(1 To maxn) As Integer, b(1 To maxn) As Integer     s= Text1. Text     n=0     For i=1 To Len(s)     ch= Mid(s, i, 1)         If  Then             n=n+1             a(n)= Asc(ch)         End If     Next i          For i=0 To k         b(i * 4+1)=a(i*3+1)\ 4         b(i*4+2)=         b(i*4+3)=(a(i*3+2)Mod16)* 4+a((i- 1) *3+3)\ 64         b(i*4+4)=a(i*3+3)Mod64     Next i     Randomize     jd= ""     For i=1 To 4 * (k+1)         jd=jd+Str(b(i)) +     Next i     Text2. Text=jd End Sub Function pd(c As String) As Boolean     pd= False     If c>="A" And c<="Z" Or c>="a" And c<="z" Then:         pd= True     End If End Function 答案: 【1】16A20B9C3D 【1】pd(ch)【2】k=n\3 -1【3】(a(i* 3+1)Mod4)*16+a(i*3+2)\16【4】Chr(Int(Rnd * 26 + 65))
信息技术 试题推荐
最近更新