题库 高中信息

题干

获取字符串中指定范围内的元素,可以通过字符编号来实现,字符编号有正向编号和反向编号。如字符串"ABCDEF",字符A的正向编号为1、反向编号为-6,如下表:

"2:4"表示获取正编号"2"到"4”的字符串,即"BCD",-5:-3、2:3、-5:4这三种编号范围也表示的是字符串"BCD"。

小王根据上述算法设计如下程序,在文本框Textl输入字符串,在文本框Text2和Text3中输入字符编号,单击"获取"按钮,在标签Labell中显示指定范围的字符串。当Text2中的编号位置在Text3中的编号位置之前,则输出正向字符串,反之输出逆向字符串。程序运行界面如图所示。


(1)用户单击命令按钮Command1时调用的事件处理过程为__________。(单选,填字母:
A.Command1/
B.Caption/C.Click/D.Commandl_Click)。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim s As String, ans As String
Dim a As Integer,b As Integer, n As Integer
s=Textl.Text:n= Len(s): ans=""
a=Val(Text2.Text): b = Val(Text3.Text)
If Abs(a)>n Or Abs(b)>nOra *b=0 Then
ans="输入范围有误"

Else

If a<0 Thena=a+n+ =1
Ifb<OThenb= ①_______
Ifa<=b Then
ans= ②_______

Else

Fori=a To b Step-1
ans=ans+Mid(s,i,1)
Next i

End If

End If

Label1.Caption=ans
End Sub
(3)若文本框Textl中输入的内容为"123456789",文本框Text2和Text3中输入的内容分别为-3和5,单击"获取”按钮,标签框Labell中显示的内容是____________。
上一题 下一题 0.99难度 填空题 更新时间:2019-11-19 07:47:48

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

同类题1

由 n 行数字组成的数字三角形如图所示。设计一个算法,对于由 n 行数字组成的数字三角形(数字范围1,50,计算从三角形的顶至底的路径经过的数字和的最大值,每一步可以从当前点走到左下方的点也可以走到右下方的点。

寻求路径最大值的算法设计如下:
按三角形的行划分,若有n 行,则有n-1 个步骤
① 从底层开始,本身数即为最大值
② 倒数第二层的计算取决于底层的数据:
12+6=18,13+14=27,24+15=39,24+8=32;
③ 倒数第三层的计算取决于底二层的数据:
27+12=39,39+7=46,39+26=65;
④ 倒数第四层的计算取决于底三层的数据:
46+11=57,65+8=73;
⑤ 最后的路径:13—8—26—15—24   其和为 86。
根据上述算法描述,设计程序界面如下图所示,点击“生成金字塔”按钮,在列表框中生成数字金字塔,点击“寻求路径最大值”按钮,在文本框 text1 中输出最大值。

依据上述描述设计如下 VB 程序:
Const n = 5
Dim sx As String
Dim i, j, k, a(1 To 100) As Integer
Private Sub Command1_Click()
List1.Clear
For i = 1 To n
For j = 1 To i

__________

sx = sx + Str(a((i - 1) * n + j))

Next j

For k = n To i Step -1

 sx = " " + sx

Next k

List1.AddItem sx

sx = ""

Next i
End Sub
Private Sub Command2_Click()
For i = n To 1 Step -1
For j = 2 To i

If__________Then

a((i - 2) * n + j - 1) = a((i - 1) * n + j - 1) + a((i - 2) * n + j - 1)

Else

a((i - 2) * n + j - 1) = a((i - 1) * n + j) + a((i - 2) * n + j - 1)

End If

Next j

Next i
__________
End Sub
请回答下列问题:
(1)若数字金字塔如图   ,输出路径最大值是______________________。
(2)请在①②③划线处填入合适的代码。

同类题3

给定区间a1,a2和b1,b2,若a2≥b1,则认为这两个区间是有重叠的,可进行合并。如区间1,3和2,6可合并为1,6;区间1,6,2,5可合并为1,6;区间1,4和4,5可合并为1,5。
编写一个“合并重叠区间”的VB程序,功能如下:在文本框Text1中按各区间起始值升序依次输入各区间的起始值和终止值(数据都用逗号分隔并以逗号结尾),单击“确定”按钮后,在Text2中显示合并后的各个区间。例如,在文本框Text1中输入“1,2,3,5,4,6,9,12,10,11,”,表示区间1,2,3,5,4,6,9,12,10,11,合并后的区间分别为1,2,3,6,9,12。程序运行界面如图所示,实现上述功能的VB代码如下:

Const n=100
Private Sub Cmd1_Click()
Dim i As Integer, k As Integer, L As Integer, R
As Integer
Dim s As String, c As String, t As String, result
As String
Dim a(1 To n) As Integer
s=  :t="":k=0
For i=1 To Len(s)
c=Mid(s,i,1)
If c<>, Then

Else
k=k+1
a(k)=Val(t)
t=""
End If
Next i
L=a(1):R=a(2)
i=3
Do While i<=k
If a(i)>R Then
result = result+"("+Str(L)+,+Str(R)+"),"
L=a(i):R=a(i+1)
   
R=a(i+1)
End If
 
Loop
result=result+"("+Str(L)+,+Str(R)+"),"
Text2. Text=result
End Sub
(1)码中①②③划线处代码补充完整。
①__________
②__________
③__________
(2)程序代码中的加框处代码有误,请改正。
_____________________
(3)运行该程序,输入数据如图所示,程序执行完毕时,变量k 为________________。