题型:综合题 题类:常考题 难易度:普通
浙江省高中信息技术 算法及其程序实现单元检测
实现以上功能的VB程序如下,在横处填入合适的代码。
Dim a(1 To 20) As Integer ‘存储区间的左端点数值
Dim b(1 To 20) As Integer ‘存储区间的右端点数值
Private Sub Form_Load()
‘将区间左端点存入数组a,区间右端点存入数组b,并在列表框List1显示,代码略
End Sub
Private Sub Command1_Click()
Dim i As Integer, j As Integer
Dim curL As Integer, curR As Integer
For i=1 To n-1
For j=1 To n-i
IfThen
t=a(j): a(j)=a(j+1): a(j+1)=t
t=b(j): b(j)=b(j+1): b(j+1)=t
End If
Next j
Next i
curL=a(1): curR=b(1)
For i=2 To n
IfThen
If curR < b(i) Then
Else
List2.AddItem“["+Str(curL)+Str(curR)+"]”
curL=a(i): curR=b(i)
End If
Next i
List2. AddItem “[”+Str(curL)+Str(curR)+“]”
End Sub
①两位D组裁判分别打“难度分”,取平均值作为该参赛选手的最终难度分。
②五位E组裁判分别打“完成分”,在5个E组打分结果中,去掉一个最高分和一个最低分,然后取平均值作为该参赛选手的最终完成分。
③难度分和完成分之和,即该参赛选手的最终得分。
例如:某参赛选手打分如下:
D组裁判打分 |
E组裁判打分 |
|||||
6.5 |
6.9 |
9.5 |
9.0 |
8.3 |
8.8 |
7.6 |
该选手“难度分”为(6.5+6.9)/2=6.7。E组裁判打分去掉一个最高分和一个最低分之后,计算“完成分”为(9.0+8.3+8.8)/3=8.7。所以该选手最终得分为6.7+8.7=15.4分。
小杜编写一个VB程序:程序运行时从数据库读取参赛选手人数和参赛选手的打分数据,依次存储在数组a中;单击“统计”按钮,依据数组a中的相关数据统计各选手的“难度分”“完成分”和“最终得分”,并在列表框List1中输出。数组a各元素的含义如下,程序运行界面如图所示。
数组元素 | 数组元素的含义 |
a(0) | 存储参赛人数n |
a(1) | a(1)和a(2)为第1位选手的D组两位裁判的打分。 a(3)、a(4)、…、a(7)为第1位选手的E组五位裁判的打分 |
… | |
a(7) | |
a(8) | a(8)和 a(9)为第2位选手的D组两位裁判的打分。 a(10)、a(11)、…、a(14)为第2位选手的E组五位裁判的打分 |
… | |
a(14) | |
… | … |
实现上述功能的VB程序如下,请回答下列问题:
编号 |
1 |
2 |
3 |
4 |
5 |
生产时间 |
4 |
7 |
5 |
5 |
9 |
商品价值 |
10 |
16 |
12 |
10 |
15 |
若生产时间为20,则可生产编号为1、2、5的商品,总价值为10+16+15=41。
编写一个VB程序,实现如下功能:在文本框Text1中依次输入各商品(数量小于等于10件)的生产时间和价值(整数用逗号分隔并以逗号结尾),在文本框Text2中输入总加工时间(至少可以生产一件商品),单击“确定”按钮Command1后,在列表框List1中显示最大的总价值和生产的商品编号。程序运行界面如图所示。
试题篮