题库 高中信息

题干

有如下程序段:
s = ""
For i = 1 To Len(Text1.Text)
s = s + Mid(Text1.Text, Len(Text1.Text) - i + 1, 1)
Next i
若文本框Textl中输入“a1b2c3”,执行程序后,变量s的值为(   )
A.3B.6C.a1b2c3D.3c2b1a
上一题 下一题 0.99难度 选择题 更新时间:2019-05-07 09:41:12

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

同类题1

某商场元月举行VIP客户积分换购活动,VIP客户根据卡内积分多少可换取不同额度的代金券。假设VIP客户共有n名,VIP卡内积分存放在数据库“customer.accdb”的Integral表中,换购活动的VB程序代码如下,程序运行时界面如图所示。工作人员在文本框Text1中输入VIP卡号后,单击“换购”按钮Command1,在文本框Text2中输出VIP客户的积分数,在标签Label3中显示可以换购的代金券额度,积分清零。按此要求编写程序如下, 但加框处代码有错,请改正。

Dim ID( ) As String   '用于存放客户卡号
Dim total( ) As Long   '用于存放积分数
Dim sc As Long   'VIP客户人数
Dim jf As Long   '积分数
Private Sub Command1_Click( )
Dim k As String   '客户卡号
Dim q As Long   '代金券额度
Dim i As Long
k = Text1.Text
For i =" 1" To sc   ’顺序查找
If ID(i) =" k" Then
jf = total(i)
cash(jf) = q    ’①
Exit For
End If
Text2.Text = Str(jf)
Label3.Caption = “您可换购的代金券总额为:”+ Str(q) + “元”
Next i
End If
End Sub
' cash函数用于计算VIP客户可换购的代金券额度
Function cash(jf As Long) As Long
If jf >=" 2000" And jf <=" 20000" Then
Cash = jf\2000*10
ElseIf jf > 20000 And jf <=" 50000" Then
Cash = jf\2000*11
ElseIf jf > 50000 And jf <=" 100000" Then
Cash = jf\2000*12
ElseIf jf > 100000 And jf <=" 150000" Then
Cash = jf\2000*13
 Else jf > 150000 Then ’ ②
Cash = jf\2000*14
End If
End Function
Private Sub Form_Load()
Dim conn As New ADODB.Connection, rs As New ADODB.Recordset
Dim intSQL As Long
conn.ConnectionString = "Provider="Microsoft.ACE.OLEDB.12.0;Data" Source=" + App.Path + "\ customer.accdb"
conn.Open
intSQL = "SELECT score  FROM Integral" 
Set rs.ActiveConnection = conn
rs.CursorType = adOpenStatic
rs.Open intSQL
sc = 0
Do While Not rs.EOF
sc =" sc" + 1
total(sc) = rs.Fields("score")
rs.MoveNext
Loop
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
End Sub
(1)加框处①有错,应改为_____________________。
(2)加框处②有错,应改为_____________________。

同类题4

由 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)请在①②③划线处填入合适的代码。