组卷题库 > 高中信息技术试卷库
试题详情
  小张要对一批数据加密,数据内容全部由英文单词和空格组成(不包含数字和标点符号,数据最终以英文单词结尾,每个单词至少由两个字母组成)。加密时小张先从文本框中读取整段原文内容,然后对每个单词进行如下操作:每个单词中第一个和第二个字母交换位置,第三个字母按字母表顺序向后移动3 位,并后移到整个单词的最后面,其余字母前移,过程如图所示。例如:单词“Hazarded”,经过转换之后得到的密文是“aHardedc”。

代码和程序运行界面如下所示,请在划线处填入合适的代码,并且在加框处代码有错误,请改正:

 

Const n = 1000

Dim mw(0 To 1000) As String    '存放转换后密文的字符

Function zh(s As String) As String     '按字母表后移3位进行转换

    Dim p As Integer,flag As Boolean

    If s >= "a" And s <= "z" Then

        p = Asc(s) - 96: flag = True

    Else

        p = Asc(s) - 64: flag = False

    End If

       ①   

    If flag Then zh = Chr(p + 96) Else zh = Chr(p + 64)

End Function

Private Sub Command1_Click()

    Dim i As Integer, j As Integer, t As String, a As Integer

    Dim tmp As String, k As Integer, s As String

    s = Text1.Text

    k = 1: a = 1

    For i = 1 To Len(s)

    t = Mid(s, i, 1)

    If t = " " Then

        k = 0: mw(i) = t

    Else

        If k < 3 Then

            mw(i + a) = t: a = -a

        Else

            tmp = zh(t)

            j = i

            Do While

                  ②  

                j = j + 1

            Loop

            mw(j) = tmp

              ③   

        End If

    End If

    k = k + 1

    Next i

    For i = 1 To Len(s)

        Text2.Text = Text2.Text + mw(i)

    Next i

End Sub

请回答下列问题:

知识点
参考答案
采纳过本试题的试卷
教育网站链接