试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:普通

高中信息技术综合库——循环语句1

小明编写了一个有关整数闭区间合并操作的VB程序:从数据库读取闭区间数据(左端点和右端点),存储在数组a中,按区间数据左端点升序排序,然后进行合并操作,操作结果存储在数组b中。

例如,读取的数据为2、3、15、25、10、14、1、5、30、60、15、25,过程是:

⑴设置区间信息为[2,3],[15,25],[10,14],[1,5],[30,60],[15,25];

⑵按区间左端点升序排序,得到J区间信息为[1,5],[2,3],[10,14],[15,25],[15,25],[30,60],[15,25];

⑶合并区间,得到[1,5],[10,25],[30,60]。说明:区间[1,5]和[2,3]合并为[1,5],区间[10,14]和[15,25]合并为[10,25],区间[10,25]和[15,25]合并为[10,25],因此合并后的结果为:[1,5],[10,25],[30,60]三个区间。

程序功能如下:单击“读数据库”按钮Command1,程序从数据库读取数据,输出在文本框Text1中;单击“开始处理”按钮Command2,程序进行区间排序,并进行区间合并操作,操作后的结果输出在文本框Text2中。程序运行结果如图所示。

实现上述功能的VB程序如下,请回答下列问题:

(1)、Private Sub Command1_CIick()中的Click()是(单选,填字母:A .对象名;B .属性名;C .事件名;D .事件处理过程名)
(2)、从数据库中读入的区间为[1,10],[15,20],[6,18],[25,30],[31,200],则合并操作后的区间为
(3)、请在划线处填入合适的代码。

Dim a(1 To 100) As Integer         ′数组a存储合并前的区间

Dim b(1 To 100) As Integer         ′数组b存储合并后的区间

Dim n As Integer                        ′n表示区间个数

Private Sub Command1_Click()

    Dim s1 As String, i As Integer

    '读取数据,并存储到数组a中,并输出在文本框Text1中,代码略

End Sub

Private Sub Command2_CIick()

    Dim s2 As String, i As Integer, j As Integer, k As Integer

    Dim n As Integer, t As Integer, x As Integer

    For i=1 To n-1

        For j=1 To 2 * n-2 * i Step 2

            If Then

                t=a(j): a(j)=a(j+2): a(j+2)=t

                t=a(j+1): a(j+1)=a(j+3): a(j+3)=t

            End If

        Next j

    Next i

    k=2

    b(1)=a(1): b(2)=a(2)

    i=2: j=3

    Do While j <=2 * n

        If b(i) >=a(j) Then

            If b(i) <=a(j+1) Then  

            Else If b(i)+1=a(j) Then

                b(k)=a(j+l)

        Else

            k=k+1:

            k=k+1: b(k)=a(j+1)

            i=i+2

        End If

        j=j+2

    Loop

    For x=1 To k-2 Step 2

        s2=s2 & "[" & b(x) & "," &b(x+1) & "]" & ","

    Next x

    s2=s2 & "[" & b(x) & "," & b(x+1) & "]"

    Text2.text=s2

End Sub

举一反三
【加试题】2016年某书城的部分书籍销售数据存放在相应的数据表中,如图a所示。小明编写了一个VB程序,实现如下功能:在文本框Text1中输人图书类别,单击“查询”按钮Command1,程序从数据库读取相关数据进行处理,在列表框List中显示该类图书所有的销售数据(从高到低排序),在文本框Text2中显示该类图书的总销售量。VB程序运行界面如图b所示。

实现上述功能的VB程序如下,请回答下列问题:

Dim num As Integer         ‘变量num存储数据库实际的记录数

Dim book(1 to 5 000)As String

Dim content(1 To 5 000)As String,content1(1 To 5 000)As String  ‘存储类别内容

Dim sales(1 To 5 000)As Long,sales1(1 To 5 000)As Long     ‘存储销售量

Private Sub Form Load( )

  Dim conn As New ADODB.Connection,rs As New ADODB.Recordset

  Dim strSQL As String

  conn. ConnectionString="Provider=Microsoft. ACE. OLEDB. 12. 0; Data Source="&App. Path&"\major. accdb"

  conn. Open

  strSQL="SEl.ECT*FROM count"

  Set rs.ActiveConnection=conn

  ‘从数据表中读取图书类别、类别内容、销售量分别存储到数组book、content、sales中

  ‘数据库实际读取的记录数存储在变量num中

  ‘代码略

End Sub

 Private Sub Command1_Click()

  Dim m As String,n As String,c As Integer,s As Long

  Dim i As Integer,j As Integer,k As Integer

  List1.Clear

  c=0:s=0

  m=Text1.Text

  For i=l To num    ‘将符合的类别内容、销售量重新存储到数组content1、sales1中

    If m=book(i)Then

        c=c+1

        content1(c)=content(i)

        sales1(c)=sales(i)

                              ‘①

    EndIf

  Next i

 

  For i=1 To                ‘②

    List1.AddItem content1(i)&"  "&Str(sales1(i))

  Next i

  Text2.Text=Str(s)

End Sub

返回首页

试题篮