题目

某校秋季运动会共有n名运动员参赛,小明编写了根据号码牌查询学生信息的程序,输入号码牌就能查询该号码牌所属的班级和选手姓名。数组a,b,c分别保存了本次运动会所有选手的号码牌、班级、姓名信息。第i个选手的号码牌保存在a(i)中,对应的班级和姓名保存在b(i)和c(i)中。程序界面如图所示,在文本框Text1中输入号码牌,单击“查询”按钮(Command1),如果找到对应的信息,就显示所属班级和选手姓名;如果没有找到,则显示“未找到”。 (1) 分析程序,可知数据库的文件名为,当前数据表的名称为。 (2) 填入适当的代码,把程序补充完整。 Dim n As Integer     ‘用于存储运动员总人数 Dim a(1000)As Integer, b(1000)As String, c(1000)As String Private Sub Form_Load( )   Dim conn As New ADODB. Connection   Dim rs As New ADODB. Recordset   conn. ConnectionString ="Provider =Microsoft. Jet. OLEDB. 4.0;DATA Source=" &App. Path & "\sport.accdb"     conn.Open     Set rs. ActiveConnection=conn     rs.Open"Select*from号码牌"     Do While Not rs. EOF  ‘到记录集rs的最后一条记录后退出循环       n=n+1       a(n)=rs. Fields("号码牌")    ‘读取当前记录“号码牌”字段值       b(n)=     ①                ‘读取当前记录“班级”字段值       c(n)=rs. Fields("姓名")      ‘读取当前记录“姓名”字段值           ②                        ‘移动到下一条记录     Loop ‘号码牌按升序排序后,显示在列表框List1中,其他代码略 End Sub Private Sub Command1_Click( )     Dim x As Integer     x=Val(Text1.Text)     pos=        ③              If pos>0 Then       Text2.Text=b(pos):Text3.Text=c(pos)     Else       Text2.Text="未找到"     End If End Sub   Function Search(Key As Integer)As Integer     Dim i As Integer,j As Integer     i=1:j=n:Search=0     Do While i<=j         m=Fix((i+j)/2)         If Key=a(m)Then             Search=m:Exit Function         ElseIf   ④   Then             j=m-1         Else             i=m+1         End If     Loop End Function 以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②;③;④。 答案: 【1】sport.accdb【2】号码牌 【1】rs.Fields("班级")【2】rs.MoveNext【3】Search(x)【4】key <a(m)
信息技术 试题推荐
最近更新