学进去-教育应平等而普惠
试题
类型:操作题
难度系数:0.40
所属科目:高中信息技术
有n个小组(编号1至n),每个小组有m个成员,每个成员都有一个大于等于0的得分。现要求按下列规则计算每个小组的成绩,并找出成绩最高的小组。
小组成绩的计算规则是:若小组成员中得分最高的前k人得分都不低于k,且其他成员得分都不超过k,则该小组成绩为k。例如,第1小组共有8个成员,得分依次为“5,2,7,11,8,6,5,1”,由此可知最高的前5人得分为“11,8,7,6,5”,其他3人得分为“5,2,1”,因此该小组成绩为5。

按上述要求,编写VB程序,功能如下:在列表框List1中显示各小组每个成员的得分,单击“计算”按钮Command1,在列表框List2中显示成绩最高的小组编号及成绩(如果有多个小组并列最高,则全部显示)。
(l)若第2小组各成员得分依次为“0,4,12,l,5,9,3,9”,则该小组的成绩是_______。
(2)请在划线处填入合适的代码。
Const n = 6
Const m = 8
Dim a(n * m)As Integer
Dim c(m)As Integer,ans(n)As Integer
Private Sulb Form_Load()
’读取n个小组每个成员的得分,按组别从小到大依次存入数组a,并显示在List1中
’n(l)到a(m)存储第1小组m个成员的得分
’a(m+1)到a(2*m)存储第2小组m个成员的得分
’以此类推,代码略
End Sub
Privute Sub Cummand 1_Click()
Dim i As Integer,p As Integer,g As Integer,maxg As Integer

maxg = -1

For i = l To n
g = GroupScore(i)
If g > maxg Then

maxg = g:p=l

__
Elself g = maxg Then
p=p+1
ans(p)=i
End If
Next i
For i = l To p

List2. Addltcm“第”+Str(ans(i))+“组,成绩:”+Str(maxg)

Next i
End Sulb
函数返回第w小组的成绩
Function Group Scone(w As Integer)As Integer

Dim i As Integer,k As Inteser

For i = 0 To m

e(i)=0

Next i

For i=(w-l)*m+l To w *m

k=a(i)

If k > m Then __

e(k)=e(k)+1
Nexl i
k=m

Do White e(k)< k And k>0

k=k-1

 __

Loop
GroupScore=k
End Fuinction
编辑解析赚收入
收藏
|
有奖纠错

同类型试题

优质答疑

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
我要答疑
编写解析
解析:

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

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