试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:困难

浙江省杭州地区重点中学2018-2019学年高二下学期信息技术期中考试试卷

如图所示加密程序:在文本框Text1中输入明文,单击命令按钮“加密”,在文本框Text2中输出密文。加密算法思路如下:1、只针对英文字符和数字进行加密,其余字符不变;2、将原文中的小写字母转换为大写字母;3、根据第2步所得结果,若是英文字符,则逐个后移4位(例如:A->E,Z->D),若是数字,则逐个前移2位(例如:3->1,1->9)。

综上所述:原文为Jim is at room 4!,加密后输出密文为:NMQ MW EX VSSQ 2!

(1)、该程序单击命令按钮“加密”事件处理过程名为
(2)、程序代码如下,请填空

Private Sub Cmd1_Click()

Dim str1 As String, str2 As String, ch As String

Dim i As Integer, j As Integer, n As Integer

str1 = Text1.Text

str2 = ""

n = Len(Text1.Text)

For i = 1 To n

   ch = Mid(str1, i, 1)

   If Then

     ch = Chr((Asc(ch) - 32))

   End If

   If ch >= "A" And ch <= "Z" Then

     ch = Chr((Asc(ch) - Asc("A") + 4) Mod 26 + Asc("A"))

   ElseIf ch >= "0" And ch <= "9" Then

     ch = 

 End If

Next i

Text2.Text = str2

End Sub

(3)、若在Text1中输入的明文为:Num  15*,则程序运行后在Text2中输出的密文为:
举一反三
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。

数组元素a(1)至a(5)依次为5,22,28,42,55,在a(3)处分成两段,交换位置后为:

a(1)

a(2)

a(3)

a(4)

a(5)

28

42

55

5

22

旋转数组a的最小元素是5。

数组d(1)至d(5)依次为0,1,1,1,1,在d(5)处分成两段,交换位置后为:

d(1)

d(2)

d(3)

d(4)

d(5)

1

0

1

1

1

旋转数组d的最小元素是0。

小明依据查找算法思想,设计一个查找旋转数组d最小元素的程序,功能如下:运行程序时,利用“添加”按钮Command1和文本框Text1依次输入旋转数组d的值,在列表List1中显示旋转数组,单击“求解”按钮Command2,在标签Label2中显示旋转数组d最小元素值。运行效果如图1所示,实现该功能的VB程序如下:

图1

Dim n As Integer

Dim d(1 To 100) As Integer '数组 d 存储待排序数据

Private Sub Command1_Click()

'按旋转数组规则将数据存入数组d中,代码略

End Sub

Private Sub Command2_Click()

  Dim mid As Integer, L As Integer, R As Integer

  L = 1: R = n

  mid = L

  Do While d(L) >= d(R)

    If  Then    '改错

      mid = R

      Exit Do

    End If

    mid = (L + R) \ 2

    If d(L)=d(R) And d(mid)=d(R) Then

mid =______________                              '填空

      Exit Do

    End If

    If d(L) < d(mid) Then

      L = mid

ElseIf d(mid) < d(R) Then

      R = mid

    End If

  Loop

Label2.Caption = "最小值为" + Str(d(mid))

End Sub

    End If

  Next i

End Function

返回首页

试题篮