题库 高中信息

题干

有如下VB程序段:
For i=2 To 8
Max=0
For j=1 To i-1
If a(i)>a(j) And f(j)>Max Then Max=f(j)
Next j
f(i)=Max+f(i)
Next i
数组f元素的初始值都为1,数组a的元素值为5,3,47,4,31,39,7,8,程序运行后f(6)的值为(   )
A.1B.2C.3D.4
上一题 下一题 0.99难度 选择题 更新时间:2019-05-22 04:40:21

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

同类题1

IPv6 是英文“Internet Protocol Version 6”(互联网协议第 6 版)的缩写。IPv6 地址总共有 128 位,为了便于人工阅读和输入,IPv6 地址使用 16 进制数表示,划分成 8 个块,每块 4 位,块与块之间用“:”隔开,如:ABCD:EF01:0000:0000:ABCD:EF01:0000:6789
同时,对于多个地址块为 0 的情况时,可以使用”::”号,进行化简。
化简原则:
①全 0 块“0000”,可以化简为“0”
②连续多个全 0 块,可以化简为“::”
③一个 IPv6 地址中只能出现一个“::”,出现多个全 0 块时,“::”要化简最长的一段,没有最长的就将最左侧的一段化简为“::”
④“::”可以出现在地址开头或结尾具体示例如下:
程序界面如图所示:

实现上述功能的 VB 程序如下,请回答下列问题:
(1)请在划线处填入合适的代码。
Private Sub Text1_Change()
Dim a(1 To 8) As String, ipstr As String, ips As String
Dim lenth As Integer, max_lenth As Integer, start As Integer ipstr = Text1.Text
For i = 1 To 8
a(i) =_________'将 IPv6 分段存入数组 a Next i
'对数组进行处理,如果字母或非零数字开头,则不用处理;如果全是数字0,则压缩成    0,如果前导为 0,则去掉,处理完毕存回数组。
'///------ 处理过程略----- /////
'如果只有一串0,则将该串“0”用“::”代替,如果不止一串0,则将最长的一串“0”简化为“::”,如果有连续  0,则将左边的一串零简化,右侧保留。
max_lenth = 0
For i = 1 To 7
If_________Then lenth = lenth + 1
Else
If   lenth > max_lenth    Then
max_lenth = lenth: start = i - lenth: lenth = 0 End If
End If Next i
If lenth > max_lenth Then   max_lenth = lenth: start = i - lenth  '根据连续 0 串的位置确定输出简化后的结果
ips = ""
If    start = 1 And max_lenth    =   7 Then '开头是 0 且全 0 ips = "::"
ElseIf   start = 1 Then    '开头是 0 但不全为 0 ips = "::"
For   i = start + max_lenth + 1   To   7 ips = ips + a(i) + ":"
Next i
ips = ips + a(i)
ElseIf   start > 1 And    start + max_lenth = 8   Then   '开头不是 0 但 0 到最后 For i = 1 To start - 1
ips = ips + a(i) + ":"
Next i
ips = ips + ":"
ElseIf start > 1 Then '开头不是 0 且 0 不到最后 For i = 1 To start - 1
ips = ips + a(i) + ":"
Next i
ips = ips + ":"
For i =_________To 7  ips = ips + a(i) + ":"
Next i
ips = ips + a(i)
Else '无连续 0 出现
For i = 1 To 7
ips = ips + a(i) + ":"
Next i
ips = ips + a(i) End If
Text2.Text = ips End Sub
(2)IPv6  地址:3BCD:0000:0000:ABCD:0000:0000:0000:6789,则化简后为_______。

同类题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