当前位置: 高中信息技术 / 综合题
  • 1. (2019高三上·杭州期中)   小张要对一批数据加密,数据内容全部由英文单词和空格组成(不包含数字和标点符号,数据最终以英文单词结尾,每个单词至少由两个字母组成)。加密时小张先从文本框中读取整段原文内容,然后对每个单词进行如下操作:每个单词中第一个和第二个字母交换位置,第三个字母按字母表顺序向后移动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

    请回答下列问题:

    1. (1) 如果输入的原文单词是“TextBox”,则加密后的密文是
    2. (2) 加框处代码有错误,则正确的是
    3. (3) 请将划线处补充完整

       ② ③ 

微信扫码预览、分享更方便