小王编写了一个“学生体能情况分析”程序,其功能是分项计算名次和优秀率(分数90分及以上为优秀)。运行程序时,在列表框List1中显示所有学生的3项体能测试分数,在文本框 Text1中输入测试项目代码(1表示游泳,2表示跑步,3表示跳远),单击“计算”按钮 Command1后,计算结果分别显示在列表框List2和标签 Label2中。程序运行界面如图1所示。
程序设计过程中数据的存储和计算方法如下:
(1)学生体能分数的存储:如图2所示,第1位学生的游泳、跑步、跳远分数依次存入数组 score的第1、2、3个元素里,第2位学生的游泳、跑步、跳远分数依次存入数组 score的第4、5、6个元素里,以此类推。
(2)计算名次的算法:先统计每个分数的个数,存入数组a,如图3中a(96)值为9,表示共有9个96分;然后按照分数从高到低依次计算每个有效分数(该分数的个数不为0)对应的名次存入数组b,分数相同时名次并列,如图3中b(96)值为10,表示96分的名次是(并列)第10名,以此类推。
分数 | 100 | 99 | 98 | 97 | 96 | … | 0 |
数组a | 3 | 0 | 0 | 6 | 9 | … | 0 |
数组b | 1 | 4 | 10 | … |
(1)根据图1中列表框 List1中的信息和图2所示的数据存储方法可知,数组元素 score(23)的值为
100
100
(填数字)。(2)实现上述功能的VB程序如下,请在①、②、③的横线处填入合适的代码。
Dim m As Integer'学生人数
Dim score(1To 3000 )As Integer'存放学生分数
Dim xm(1To1000)As String'存放学生姓名
Private Sub Commandl_Click( )
Dim i As Integer,t As Integer,code As Integer,mc As Integer
Dima(0 To 100)As Integer'存放每个分数的个数
Dimb(0To100)As Integer'存放每个分数的名次
Dim code_n(I To 3)As String
code_n(1)=″游泳″:code_n(2)=″跑步″:code_n(3)=″跳远″
code=val(Text1.Text)
For i=0 To 100
a(i)=0
Next i
sum=0
For i=1 Tom′计算每个分数的个数及体能测试优秀的人数
t=
①
①
a(score(t))=a(score(t))+1
If score(t)>=90 Then sum=sum+1
Next
mc=1
For i=100 To 0 Step-1'计算每个分数的名次
Ifa(i)<>0 Then
b(i)=mc
mc=
②
②
End if
Next i
List2.clear
List2.AddItem″姓名″+
③
③
+″名次''For i=1 To m
'在List2中输出m个学生的姓名、指定项目的分数及名次,代码略
Next i
sum=lnt(sum/m*10000+0.5)/100
Label2.Caption=“优秀率是:“+Str(sum)+″%″
End sub
Private Sub form_Load( )
'从数据库读取姓名存入数组xm,体能测试数据存入数组 score,总人数存入变量m。
'代码略
End Sub

【考点】编辑事件处理过程的代码.
【答案】100;①;②;③
【解答】
【点评】
声明:本试题解析著作权属菁优网所有,未经书面同意,不得复制发布。
发布:2024/6/27 10:35:59组卷:1引用:1难度:0.5
相似题
-
1.根据AQI值判断城市的空气质量。若城市的AQI值(整数)不超过100则空气质量优良,否则空气质量有污染。当输入的AQI值为-1时则退出程序。不要更改程序结构,将题中的①②③④填入正确的语句。
city=input(“请输入城市名:”)
AQI=int(input(“请输入空气质量指数AQI的值:”))
①______ AQI!=-1:
if ②______:
print(city,“的空气质量优良。”)
③______:
print(city,“的空气质量有污染。”)
city=input(“请输入城市名:”)
AQI=④(input(“请输入空气质量指数AQI的值:”))
(1)序号①答案为
A.if
B.while
C.for
D.def
(2)序号②答案为
A.AQI>=100
B.AQI<=100
C.AQI>100
D.AQI<100
(3)序号③答案为
A.elif
B.break
C.if
D.else
(4)序号④答案为
A.int
B.float
C.str
D.else发布:2025/1/2 11:0:1组卷:0引用:0难度:0.4 -
2.一球从100米高度自由落下,每次落地后反跳回原高度的一半,再下落。编写一个C程序,求它在第10次落地时,其经过了多少米?第10次反弹多高?
发布:2025/1/2 11:0:1组卷:1引用:3难度:0.3 -
3.利用海伦公式求解三角形面积。已知a,b,c为三角形的三条边长,p为三角形的半周长,即p=(a+b+c)/2,计算此三角形面积S的海伦公式为:
。不要更改程序结构,将题中的①②③填入正确的语句。
import math#导入数学模块
def hl(a,b,c):#定义求三角形面积的函数
p=①
s=math.jye.ai(②)#sqrt用于计算算术平方根
return ③#返回面积的值
a,b,c=3,4,5#边长依次赋值
print(“此三角形的面积S为:“,hl(a,b,c))
A. (a+b+c)/2 B.p*(p-a)*(p-b)*(p-c)
C. (a+b+c)*2 D.s
(2)序号②答案为
A.(a+b+c)/2 B.p*(p-a)*(p-b)*(p-c)
C.(a+b+c)*2 D.(3+4+5)/2
(3)序号③答案为
A.p B.s
C.p*(p-a)*(p-b)*(p-c) D.0发布:2025/1/2 11:0:1组卷:0引用:0难度:0.4