试题

试题 试卷

logo

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

浙江省瑞安市上海新纪元高级中学2019-2020学年高二下学期信息技术期末考试试卷

IPV4点分十进制IP地址可转换为十进制数字形式。编写“模拟IP过滤器”程序,程序功能如下:程序运行时,在列表框List1中显示能通过过滤的IP区间(IP区间按起始端点升序排序),在文本框Text1中输入需要判断的IP地址,单击“验证”按钮Cmd1,若IP区间有重叠区间则作合并处理,并显示在列表框List2中,然后对输入的IP地址进行判断,判断结果显示在标签Label4中。程序运行界面如图所示:

(1)、Cmd1对象 属于类(单选,填字母 :A . Form/ B . Label/ C . TextBox /D . CommandButton)。
(2)、实现上述功能的VB程序如下,请在划线处填入合适的代码。

Dim a(1 To 100) As Integer, n As Integer

 Private Sub Form_Load()

'本过程从数据库中读取n个IP地址区间数据,并依次存入数组a(1)、…、a(2*n)中

'对能通过过滤的IP区间按区间起始端点升序排序

'代码略

End Sub

Private Sub Cmd1_Click()

Dim ip As Integer, L As Integer, R As Integer

Dim i As Integer, pos As Integer, f As Boolean

ip = Val(Text1.Text)

L = a(1): R = a(2): i = 3: pos = 1     ‘合并重叠区间

Do While i <= 2 * n - 1

    If Then

      If a(i + 1) > R Then R = a(i + 1)

      Else

        a(2 * pos - 1) = L:a(2 * pos) = R

        pos = pos + 1

        L = a(i)

        R = a(i + 1)

      End If

   

Loop

    a(2 * pos - 1) = L: a(2 * pos) = R           '依次输出排序合并后的区间数据,代码略

    If  Then       '判断请求的 IP 地址

        Label4.Caption = "IP 需过滤"

    Else

        i = 1: f = False

Do While i <= pos And Not f

    If  Then

      i = i + 1

    Else

      Label4.Caption = "IP 不需过滤" f = True

    End If

Loop

  If f = False Then Label4.Caption = "IP 需过滤"

  End If

End Sub

(3)、程序中加框处代码有错,请改正。
返回首页

试题篮