学进去-教育应平等而普惠
试题
类型:操作题
难度系数:0.40
所属科目:高中信息技术
编写一个VB抽奖程序,功能如下:从数据库读取相关数据并显示在列表框List1中,在文本框Text1中输入中奖人数,单击“抽奖”按钮Command1,在列表框List2中输出   结果。
抽奖规则:中奖人数为1人,男女不限;
中奖人数超1人,男女对半(奇数时女性多1人)。
程序运行界面如图所示。

实现上述功能的VB程序如下:
Dim xm(1 To 500) As String, xh(1 To 500) As String, xb(1 To 500) As String
Dim n As Integer     '学生总人数
Dim a(1 To 100) As Integer  '抽中序号
Private Sub Form_Load()
'本过程读取n位同学的序号、姓名和性别,
'分别存储在数组xh、xm、xb中
'并在List1中显示,代码略
End Sub
Private Sub Command1_Click()
Dim rs As Integer, m As Integer, x As Integer, girl As Integer, i As Integer
Dim xbs(1 To 500) As Integer
Randomize
List2.Clear
List2.AddItem "姓名" & "  " & "性别"
rs = _________
For i = 1 To n
If xb(i) = "女" Then  xbs(i) = 1  Else  xbs(i) = 0
Next i
m = 0
girl = 0
If rs = 1 Then
x = Int(Rnd * n) + 1
List2.AddItem xm(x) & "  " & xb(x)
Else
Do While m < rs
x = Int(Rnd * n) + 1
If checkf(x) Then
m = m + 1 : a(m) = x
girl = girl + xbs(a(m))
If _______ Then
a(m) = 0: m = m - 1
ElseIf girl > (rs + 1) \ 2 Then
a(m) = 0: m = m – 1
_________
End If       
End If
Loop
For i = 1 To m
List2.AddItem
Next i
End If
End Sub
Function checkf(p As Integer) As Boolean
'核对重复中奖,未中过奖返回True
'代码略
End Function
(1)请在划线处填入合适的代码。
(2)程序中加框代码有错,请改正。
________
编辑解析赚收入
收藏
|
有奖纠错

同类型试题

优质答疑

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19
我要答疑
编写解析
解析:

奖学金将在审核通过后自动发放到帐

提交
我要答疑
我要答疑:
提交