题库 高中信息

题干

在一个数据序列中,如果出现连续升序的几个数,称为一个升序段。小张为了在10个数中找和值最大的升序段,编写了下面VB程序。程序运行时,在List1里随机生成10个整数,点击“统计”按钮Command1,在List2显示出和值最大的升序段和它们的和。程序运行界面如左图所示。
【小题1】(1)在设计程序界面时,可用右图中所示“控件工具箱”中的 (填写相应编号)添加用于显示10个随机整数的列表框。
    
【小题2】(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Dim a(1 To 10) As Integer
Private Sub Form_Load()
’产生10个随机整数,并在列表框List1中显示,代码略
End Sub
Private Sub Command1_Click()
Dim k As Integer, summax As Integer, sum As Integer,i As Integer, j As Integer
k = 0 :summax = 0
sum = ①    
For i = 1 To n - 1
If a(i) < a(i + 1) Then

sum = sum + a(i + 1)

k = k + 1

Else
If ②     Then
summax = sum
_   _③   
sumb = i

End If

k = 0

sum = a(i + 1)

End If
Next i
For j = sumt To sumb
List2.AddItem Str(a(j))
Next j
List2.AddItem "和是:" & str(summax)
End Sub
上一题 下一题 0.99难度 填空题 更新时间:2019-05-15 10:50:15

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

同类题3

用VB设计一个模拟选手得分程序,在文本框Text1中输入裁判人数(人数大于2),然后点击Command1按钮,在List1中产生70到100的随机数为裁判的打分,去除一个最高分,去除一个最低分,取其他裁判打分的平均分作为最终得分显示在文本框Text2中,运行效果如图所示。

(1)若要在程序运行时,修改窗体显示的标题为“得分计算”,则下面语句可行的是__________。
(单选,填字母:A.Command1.Caption=“得分计算”/B.Form1.Name=“得分计算”/C.Form1.Text=“得分计算”/
A.Form1.Caption=“得分计算”)
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim n As Integer   '裁判人数
Dim max As Integer, min As Integer, sum As Integer
Dim AveScore As Single  '存储最终得分
n = Val(Text1.Text): sum = 0
If n <= 2 Then MsgBox ("输入数据要大于2,请重新输入!")
If n > 2 Then
List1.Clear
Randomize
score = Int(Rnd() * 31) + 70
List1.AddItem Str(score)
_______________________ ' ①
max = score
min = score
For i = 2 To n
score = Int(Rnd() * 31) + 70
List1.AddItem Str(score)
If score > max Then max = score
If score < min Then min = score
sum = sum + score
Next i
AveScore = ______________________ '②
Text2.Text = Str(AveScore)
End If
End Sub
(3)若要将最终得分保留一位小数(四舍五入),下列代码可行的是______________________。
A.AveScore=int(AveScore+0.5)
B.AveScore=int(AveScore*10+0.5)/10
C.AveScore=int(AveScore*100+0.5)/100

同类题5

某省举办大型活动,面向省内城市招募有志愿服务工作经历的志愿者,每个志愿者的报名数据包含城市序号、姓名(字母缩写)和参加志愿服务的次数。现需整理报名数据,要求是:先按城市序号从小到大排列;然后,同一城市的志愿者按参加志愿服务的次数从多到少排列。
按上述要求,编写一个VB程序,功能如下:在列表框List 1中显示整理前的数据,单击“整理”按钮Command 1,整理结果显示在列表框List 2中,程序运行界面如图所示。

(1)将数组元素q(1)到q(200)分为10段,如果每段恰好包含20个元素,采用选择排序算法分别对每段中的元素进行排序,整个排序过程中,数组元素之间的比较次数是________(单选,填字母:
A.次/B.次/C.次)。
(2)请在划线处填入合适的代码。
    报名总人数
城市数

 存储每个城市的报名人数


Private Sub Form_Load()
本过程读取城市序号,姓名和参加次数的数据分别存储在数组city;pname和times中,
并在List 1中显示,代码略
End Sub
Private Sub Command 1_Click()
Dim i As Integer,j As Integer,k As Integer,t As Integer,pos As Integer


Next i
   统计每个城市报名人数
 ①

Next i




Next i


  

Next i

  对各城市报名数据按参加志愿服务的次数进行排序



Next j

Next i

List 2.AddItem " " & city(q(i))& " " & pname(q(i))& " " & times(q(i))
Next i
End Sub
Function fp(head As Integer,tail As Integer)As Integer
Dim i As Integer,k As Integer

   

Next i

End Function