- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 算法实例
- 面向对象程序设计 VB开发工具
- 算法实例的程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
某算法的部分流程图如下图所示。输入s值为2018,i初始值为0,执行这部分流程图后,则s和i分别是( )


A.1,3 | B.1,4 | C.2,3 | D.2,4 |
某景区使用了游客人数控制系统来控制景区内游览人数。该系统在景区各个入口和出口处分别统计人数,并汇总计算得出景区内的大致人数。该过程属于计算机解决问题的一般步骤中的哪一个环节
A.分析问题 |
B.寻找解决问题的途径和方法 |
C.编写程序 |
D.用计算机处理 |
(加试题)随机数排序程序。程序功能如下:窗体加载时生成[10,100]范围内的随机整数10 个存储在数组 a 中,并在列表框 List1 中显示原始数据,单击“排序”按钮,这 10 个数据按 降序排序后显示在列表框 List2 中。程序运行效果如图所示。实现上述功能的 VB代码如下,但 加框处代码有错,请改正。

Dim a(1 To 10) As Integer
Private Sub Command1 Click()
Dim i As Integer, j As Integer, x As Integer p = True
i = 1
Do While i <= 9 And p p = False
For j = 10 To i + 1 Step -1
If a(j)< a(i) Then '①________
k = a(j): a(j) = a(j - 1): a(j - 1) = k: p = True
End If
Next j
i = i + 1
Loop
For i = 1 To 10
Private Sub Form_Load() Dim i As Integer
List1.Clear
Randomize ' 初始化随机函数 Rnd
For i = 1 To 10
a(i) = Int(Rnd * 100) '②________ List1.AddItem Str(a(i))
Next i
End Sub

Dim a(1 To 10) As Integer
Private Sub Command1 Click()
Dim i As Integer, j As Integer, x As Integer p = True
i = 1
Do While i <= 9 And p p = False
For j = 10 To i + 1 Step -1
If a(j)< a(i) Then '①________
k = a(j): a(j) = a(j - 1): a(j - 1) = k: p = True
End If
Next j
i = i + 1
Loop
For i = 1 To 10
List2.AddItem Str(a(i)) Next i
End SubPrivate Sub Form_Load() Dim i As Integer
List1.Clear
Randomize ' 初始化随机函数 Rnd
For i = 1 To 10
a(i) = Int(Rnd * 100) '②________ List1.AddItem Str(a(i))
Next i
End Sub
(加试题)用如下对分查找算法 VB.程序段,对数组 a 中 7 个有序数据“20,30,35,42,46,50,53”进行查找。
i = 1 : j = 7 : x = 45
Do While i <= j
m = (i + j) \ 2
If a(m) = x Then Exit Do ‘Exit Do 退出 Do 循环 If a(m) > x Then
j = m - 1
Else
i = m + 1
End If
Loop
执行完上述代码后,根据最终变量值判断下列表达式,其中成立的是
i = 1 : j = 7 : x = 45
Do While i <= j
m = (i + j) \ 2
If a(m) = x Then Exit Do ‘Exit Do 退出 Do 循环 If a(m) > x Then
j = m - 1
Else
i = m + 1
End If
Loop
执行完上述代码后,根据最终变量值判断下列表达式,其中成立的是
A.i = j B. i = m + 1 |
B.j = m - 1 |
C.j = m |
(加试题)有如下 VB程序段: For i = 1 To 2
k = i
For j = 6 To i + 1 Step -1
If a(j) > a(k) Then k = j
Next j
If k <> i then
t = a(i) : a(i) = a(k) : a(k) = t
End If
Next i
数组元素 a(1)到 a(6)的值依次为“71,46,31,58,29,78”,经过该程序段“加工”后,数组元素a(1)到 a(6)的值依次为
k = i
For j = 6 To i + 1 Step -1
If a(j) > a(k) Then k = j
Next j
If k <> i then
t = a(i) : a(i) = a(k) : a(k) = t
End If
Next i
数组元素 a(1)到 a(6)的值依次为“71,46,31,58,29,78”,经过该程序段“加工”后,数组元素a(1)到 a(6)的值依次为
A.29,31,46,58,71,78 |
B.78,71,58,46,31,29 |
C.46,29,31,58,71,78 |
D.78,71,31,58,29,46 |
(加试题)最大回文子串。回文字符串是具有回文特性的字符串:即该字符串从左向右读, 与从右向左读都一样.如:凤落梧桐梧落凤,abcba 等。“最大回文子串”是指一个字符串中长 度最大的回文字符串,其基本算法思想如下:
(1)每个回文都有一个“中心”,当回文字符数为奇数时,中间的那个字符就是回文中心;但是当回文的字符数为偶数时,回文的中心是最中间的那两个字符,且这两个字符相同。
(2)对任意一个字符或者相同的两个连续字符,我们都可以假设它为回文的“中心”,向它的 左右两边扩展出尽可能长的回文。对于每种假设,我们都能得到一个回文,而最长回文必定由 其中的某个假设中得到!
现编写一个 V
(1)当 Text1 中输入“123321344332423112113123”时,则输出的结果为_________。
(2)请在划线处填入合适的代码。
Dim n As Integer
Dim a(0 To 100) As String Private Sub Command1 Click() Dim s As String
Dim left As Integer, right As Integer, i As Integer
Dim max As Integer, m As Integer, b1 As Integer
'变量 b1 用于记录回文子串的左端起点 Text2.Text = ""
s = Text1.Text n = Len(s)
For i = 1 To n
For i = 1 To n left = i
right = i
m = longest(left, right) If m > max Then
b1 = i - m \ 2 max = m
End If left = i
right = i + 1
If a(left) = a(right) Then
m = longest(left, right) + 1
If m > max Then
①________
max = m
End If
End If
Next i
For i = b1 To ②________
Function longest(left As Integer, right As Integer) As Integer
Dim p As Integer p = 1
Do While left > 1 And right < n And ③________
left = left - 1 right = right + 1 p = p + 2
Loop
longest = p
End Function
(1)每个回文都有一个“中心”,当回文字符数为奇数时,中间的那个字符就是回文中心;但是当回文的字符数为偶数时,回文的中心是最中间的那两个字符,且这两个字符相同。
(2)对任意一个字符或者相同的两个连续字符,我们都可以假设它为回文的“中心”,向它的 左右两边扩展出尽可能长的回文。对于每种假设,我们都能得到一个回文,而最长回文必定由 其中的某个假设中得到!
现编写一个 V
A.程序,在 Text1 中输入一串字符,单击“统计”按钮,在 Text2 中显示该字 符串中的最大的回文子串(长度相同时,输出最左边的子串)。请回答下列问题: |
(2)请在划线处填入合适的代码。
Dim n As Integer
Dim a(0 To 100) As String Private Sub Command1 Click() Dim s As String
Dim left As Integer, right As Integer, i As Integer
Dim max As Integer, m As Integer, b1 As Integer
'变量 b1 用于记录回文子串的左端起点 Text2.Text = ""
s = Text1.Text n = Len(s)
For i = 1 To n
a(i) = Mid(s, i, 1) Next i
max = 0: left = 0: right = 0For i = 1 To n left = i
right = i
m = longest(left, right) If m > max Then
b1 = i - m \ 2 max = m
End If left = i
right = i + 1
If a(left) = a(right) Then
m = longest(left, right) + 1
If m > max Then
①________
max = m
End If
End If
Next i
For i = b1 To ②________
Text2.Text = Text2.Text + a(i) Next i
End SubFunction longest(left As Integer, right As Integer) As Integer
Dim p As Integer p = 1
Do While left > 1 And right < n And ③________
left = left - 1 right = right + 1 p = p + 2
Loop
longest = p
End Function
如图所示,这是打印九九乘法表的程序,请你完善程序。

Private Sub Form_click()
Dim i As Integer, j As Integer
For i = 1 To ①________
Next i
End Sub

Private Sub Form_click()
Dim i As Integer, j As Integer
For i = 1 To ①________
For j = 1 To ②_________
Print j; "*"; i; "="; i * j;
Next j
Print ‘换行Next i
End Sub
在绕地球做匀速圆周运动的宇宙飞船中,航天员绕地球做匀速圆周运动的向心力计算公式为:
,若用VB表达式来表示,正确的是( )

A.F=m(g-v*v/r) | B.F=m(g-v^2/r) |
C.F=m*(g-v^2/r) | D.F=m*(g-v*2/r) |
程序运行界面如图所示。

要求在文本框Text1中输入字符串,单击“统计”按钮Command1后,在标签Label2中显示所输入字符串长度。需要编写的VB事件处理过程的名称为( )

要求在文本框Text1中输入字符串,单击“统计”按钮Command1后,在标签Label2中显示所输入字符串长度。需要编写的VB事件处理过程的名称为( )
A.Command1_Click | B.Text1_Click |
C.Form_Click | D.Label2_Click |