题库 高中信息

题干

小明基于冒泡排序算法编写了一个VB程序,功能如下:单击“生成”按钮command1,生成n个[10,99]的随机整数赋值给a数组,并在列表框ists1中显示。单击“排序”按钮command2,对这组数据进行错位排序(即从前往后依次是最小的,最大的,第二小的,第二大的----依次类推)。在列表list2中依次输出数据排序的结果,程序运行界面如图所示:

实现上述功能的VB程序如下:
(1)程序测试运行后生成如下文件:(
A.paixu.frmB.paixu.vbpC.paixu.vbwD.paixu.exe),其中属于windows系统可执行文件是:(单选,填字母:_______)
(2)划线①处应填:__________
(3)加框①、②处代码有错,请改正。
Const n=10
Dim a(1 To 10) As Integer
Private Sub Command1_.Click()
For i=1 To n
    ①
List1.Additem Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
tmp= 1
For i=1To n-1
For j=n To i+1 Step-1
If  tmp*(a(j)-a(j-1))>0 Then ①______________________
t=a(j);a(j)=a(j-1):a(j-1)=t 
End If
Next j 
tmp=-1 ②______________________
Next i
For i=1 To 10
List2.Addltem Str(a(i))
Next i
End Sub
上一题 下一题 0.99难度 填空题 更新时间:2019-08-11 04:23:30

答案(点此获取答案解析)

同类题1

为了合理有效的共享学校图书馆自修室资源,学校实行自修室座位网上预约,学生
按学号登录系统进行预约(学号编码为六位数字,第一二位代表年级,第三四位代表班级,第五 六位代表顺序号。如 030102 表示高三 1 班 2 号同学)。为了方便老师管理,预约结束由电脑进行 排位。排位规则如下:
①年级优先原则,先高三再高二最后高一
②班号优先原则,同年级的班号小的排前面
③序号优先原则,同班级同学序号小的排前面 小张根据以上要求编写了 VB 程序,程序界面如下图所示:

实现上述功能的 VB 程序代码如下,请回答下列问题:
⑴分析程序,可知调用的数据库的名称为____________________________________。
⑵请在划线处填入合适的代码。
Dim a(200) As String
Const num = 200
Dim temp As String
Private Sub Form_Load()    ‘此处代码实现将预约信息存储到数组 a(i)中
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "provider=Microsoft.AC
A.OLEDB.12.0;data source=" & App.Path & "" &"stu.accdb"
rs.Open "select * from student"
i = 1
Do While Not rs.EOF
a(i) = rs("xuehao") 
rs.MoveNext
①____________
Loop
rs.Close
cn.Close
List1.AddItem "预约号" & "    " & "学号"
For i = 1 To num

List1.AddItem Str(i) & "    " & a(i)

Next i
End Sub
Private Sub Command1_Click()
For i = 1 To num - 1
For j = num To i + 1 Step -1
If   ②____________  Then
temp = a(j) a(j) = a(j - 1) a(j - 1) = temp
End If

Next j

Next i
List2.Clear
List2.AddItem "座位" & "    " & "学号"
For i = 1 To num
List1.AddItem Str(i) & "    " & a(i)
Next i
End Sub
Function check(x As String, y As String) As Boolean
Dim x1 As Integer, x2 As Integer, x3 As Integer
Dim y1 As Integer, y2 As Integer, y3 As Integer
x1 = Val(Mid(x, 1, 2)) : x2 = Val(Mid(x, 3, 2)) : x3 = Val(Mid(x, 5, 2))
y1 = Val(Mid(y, 1, 2)) : y2 = Val(Mid(y, 3, 2)) : y3 = Val(Mid(y, 5, 2))
If x1 < y1 Or x1 =   y1 And x2 > y2 Or    ③__________   Then
check = True
Else

check = False

End If
End Function