- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 程序设计语言
- 循环结构
- 分支结构
- 顺序结构
- 类、对象、属性、方法、事件和事件处理的概念
- VB应用程序的界面设计与调试
- 基本数据类型
- 常量、变量、数组
- 常用的标准函数
- 基本运算及表达式
- 赋值语句
- 选择语句
- + 循环语句
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
(加试题)用绳索围成回字迷宫图(左图所示),迷宫路宽是 1 米,如果绳索长为 X 米,则可以构成多少个边长为1米并且至少两边在绳索上的正方形。程序效果如右图所示。

Dim X As Integer, L As Integer, i As Integer
Dim n As Integer, a As Integer, b As Integer
X = Val(Text1.Text)
If X < 2 Then
n = 0
ElseIf X >= 2 And X <= 4 Then
n = 1
Else
i = 1: L = 3
Do While ①
If L = X Then
n = i ^ 2
Else
L = L - 4 * i
a = ②
b = ((X - L) \ i) * (i - 1) - 1 + (X - L) Mod i
n = a + b
End If
End If
Label1.Caption = " 绳索长度为 " + Str(X) + " 米,可以构成 " + Str(n) + " 个边长为 1 米的正方形。"
(1)为实现该程序的功能,画线处的语句应填写为:
①________________________
②_________________________
(2)如果绳索长度 X 为 15 米,则可以构成相应的正方形个数为________。


Dim X As Integer, L As Integer, i As Integer
Dim n As Integer, a As Integer, b As Integer
X = Val(Text1.Text)
If X < 2 Then
n = 0
ElseIf X >= 2 And X <= 4 Then
n = 1
Else
i = 1: L = 3
Do While ①
i = i + 2
L = L + 4 * i
LoopIf L = X Then
n = i ^ 2
Else
L = L - 4 * i
a = ②
b = ((X - L) \ i) * (i - 1) - 1 + (X - L) Mod i
n = a + b
End If
End If
Label1.Caption = " 绳索长度为 " + Str(X) + " 米,可以构成 " + Str(n) + " 个边长为 1 米的正方形。"
(1)为实现该程序的功能,画线处的语句应填写为:
①________________________
②_________________________
(2)如果绳索长度 X 为 15 米,则可以构成相应的正方形个数为________。
(加试题)(改编)有如下 VB 程序段:
For i=1 to 3
For j=1 to 5-i
If a(j)>a(j+1) Then
t=a(j) : a(j)=a(j+1) : a(j+1)=t
End If
Next j
Text1.Text = Text1.Text + Str(a(i))
Next i
数组元素 a(1)到 a(5)的值依次为“3,7,9,8,4”。若该程序段执行后,文本框 Text1 显示的内容是
For i=1 to 3
For j=1 to 5-i
If a(j)>a(j+1) Then
t=a(j) : a(j)=a(j+1) : a(j+1)=t
End If
Next j
Text1.Text = Text1.Text + Str(a(i))
Next i
数组元素 a(1)到 a(5)的值依次为“3,7,9,8,4”。若该程序段执行后,文本框 Text1 显示的内容是
A.3 7 7 | B.3 7 4 | C.3 7 4 | D.3 8 9 |
有一种数字加密算法如下:将该数位与其位置相加得到X,X除以10的余数即为编号,若余数为0,编号取10,再从密码表中找出与编号对应的加密字符,其密码表如下:
例如:数字2018加密过程:
按照上述方法,设计一个字符加密的VB程序,运行程序时,在文本框Text1中输入明文数字,单击加密按钮Command1,程序将明文加密,并将加密后的密文显示在文本框Text2中。程序运行效果如图所示。

(1)将命令按钮上显示的文本Command1”改为“加密”,可在其属性窗口中将____属性的属性值修改为“加密”。
(2)为实现上述功能,请在划线处填入合适代码或选项。
Private Sub Command1_Click()
Dim jm As String, s1 As String, s2 As String, x As Integer
jm = "HowAreYOU?"
s1 = ____________________
For i = 1 To Len(s1)
x = Val(Mid(s1, i, 1)) + i
x = ____________________
If x = 0 Then x = 10
s2 = ____________________
Next i
Text2.Text = s2
End Sub
(3)若密文是“YwUH”,则明文是____________________。
编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
加密字符 | H | o | w | A | r | e | Y | O | U | ? |
例如:数字2018加密过程:
数字 | 2 | 0 | 1 | 8 |
位置 | 1 | 2 | 3 | 4 |
编号 | 3 | 2 | 4 | 12 mod 10=2 |
加密字符 | w | o | A | o |
按照上述方法,设计一个字符加密的VB程序,运行程序时,在文本框Text1中输入明文数字,单击加密按钮Command1,程序将明文加密,并将加密后的密文显示在文本框Text2中。程序运行效果如图所示。

(1)将命令按钮上显示的文本Command1”改为“加密”,可在其属性窗口中将____属性的属性值修改为“加密”。
(2)为实现上述功能,请在划线处填入合适代码或选项。
Private Sub Command1_Click()
Dim jm As String, s1 As String, s2 As String, x As Integer
jm = "HowAreYOU?"
s1 = ____________________
For i = 1 To Len(s1)
x = Val(Mid(s1, i, 1)) + i
x = ____________________
If x = 0 Then x = 10
s2 = ____________________
Next i
Text2.Text = s2
End Sub
(3)若密文是“YwUH”,则明文是____________________。
有如下程序段:
x=0:y=0
For i=1 to 16
If i mod 3=0 Then
x=x+1
Else
y=y+1
End if
Next i
程序运行后,输出x,y的值分别为
x=0:y=0
For i=1 to 16
If i mod 3=0 Then
x=x+1
Else
y=y+1
End if
Next i
程序运行后,输出x,y的值分别为
A.10,6 | B.11,5 | C.5,11 | D.6,10 |
(加试题)单循环赛制是一种较为公平合理的比赛制度,比赛过程中所有参赛队伍均能相遇一次。其秩序编排可采用“逆时针轮转方法”:数字1~n依次作为队伍编号,把编号按U型走向分成均等两边(若n为奇数,则在末尾增加编号0,使总数为偶数),即可得到第一轮的比赛顺序,例如,5个队伍的比赛编排情况如图a所示;第二轮开始,固定编号1,其余编号均按逆时针方向移动一个位置,即为该轮比赛顺序;以后各轮比赛顺序以此类推,与编号0对阵的表示本轮轮空。
小赵为此编写了VB程序,功能如下:在文本框Text1中输入参赛队伍数N,单击“编排”按钮command1,在列表框list1中输出每轮比赛顺序。程序运行效果如图所示。

实现上述功能的VB代码如下,
Private Sub Command1_Click()
Dim team(1 To 20) As String
Dim n As Integer, c As Integer, result As String
Dim i As Integer, j As Integer, temp As String
n = __________
For i = 1 To n
team(i) = Str(i)
Next i
c = n + n Mod 2
If c <> n Then team(c) = Str(0)
For i = 1 To n
result = ""
For j = 1 To c \ 2
result = result & team(j) & "-" & __________ & ";"
Next j
List1.AddItem "第" & Str(i) & "轮:" & result
temp = team(c)
For j = c To 2 Step -1
team(j) = _________
Next j
team(2) = temp
Next i
End Sub
第一轮![]() ![]() 2-5 ![]() | 第二轮 1-5 0-4 2-3 | 第三轮 1-4 5-3 0-2 | 第四轮 1-3 4-2 5-0 | 第五轮 1-2 3-0 4-5 |
小赵为此编写了VB程序,功能如下:在文本框Text1中输入参赛队伍数N,单击“编排”按钮command1,在列表框list1中输出每轮比赛顺序。程序运行效果如图所示。

实现上述功能的VB代码如下,
Private Sub Command1_Click()
Dim team(1 To 20) As String
Dim n As Integer, c As Integer, result As String
Dim i As Integer, j As Integer, temp As String
n = __________
For i = 1 To n
team(i) = Str(i)
Next i
c = n + n Mod 2
If c <> n Then team(c) = Str(0)
For i = 1 To n
result = ""
For j = 1 To c \ 2
result = result & team(j) & "-" & __________ & ";"
Next j
List1.AddItem "第" & Str(i) & "轮:" & result
temp = team(c)
For j = c To 2 Step -1
team(j) = _________
Next j
team(2) = temp
Next i
End Sub
(加试题)某VB程序段如下:
s = 0
For i = 1 To 5
a(i) = 0
Next i
For i = 2 To 5
For j = i To 5
If j Mod i = 0 Then
a(j) = a(j) + 1
s = s + a(j)
End If
Next j
Next i
运行程序段后,变量s的值为
s = 0
For i = 1 To 5
a(i) = 0
Next i
For i = 2 To 5
For j = i To 5
If j Mod i = 0 Then
a(j) = a(j) + 1
s = s + a(j)
End If
Next j
Next i
运行程序段后,变量s的值为
A.6 | B.5 | C.4 | D.3 |
小婷编写了一个VB程序,实现如下功能,在文本框text1中输入一个4位整数zs,单击解密按钮后,在list1列表框中显示当前zs值降序开始的10位相邻整数“解密前”和“解密后”的信息,运行界面如第图所示。
解密规则:将整数中各个位中的每一位值乘以5,然后除以8所得余数即为该位的值,然后将所得数的首末位进行交换。如数字9357,解密后的值为 3715。

(1)观察程序代码,可知“解密”按钮的对象名是 。
(单选,填字母:
(2)实现上述功能,请在划线处填入合适的代码。
Private Sub Decryp_Click( )
Dim zs As Long, g As Integer, s As Integer, b As Integer, q As Integer
Dim jmh As String, m As Integer
zs = Val(Text1.Text)
For m = zs To ①
q = (m \ 1000) * 5 Mod 8
b = ((m \ 100) Mod 10) * 5 Mod 8
s = ((m \ 10) Mod 10) * 5 Mod 8
g = (m Mod 10) * 5 Mod 8
jmh = ②
List1.AddItem Str(m) + " " + jmh
Next m
End Sub
(3)由上述算法可知,四位数“6124”对应的解密数值是 。
解密规则:将整数中各个位中的每一位值乘以5,然后除以8所得余数即为该位的值,然后将所得数的首末位进行交换。如数字9357,解密后的值为 3715。

(1)观察程序代码,可知“解密”按钮的对象名是 。
(单选,填字母:
A.Command1 | B.List1 | C.Decryp_Click( ) | D.Decryp | E.解密) |
Private Sub Decryp_Click( )
Dim zs As Long, g As Integer, s As Integer, b As Integer, q As Integer
Dim jmh As String, m As Integer
zs = Val(Text1.Text)
For m = zs To ①
q = (m \ 1000) * 5 Mod 8
b = ((m \ 100) Mod 10) * 5 Mod 8
s = ((m \ 10) Mod 10) * 5 Mod 8
g = (m Mod 10) * 5 Mod 8
jmh = ②
List1.AddItem Str(m) + " " + jmh
Next m
End Sub
(3)由上述算法可知,四位数“6124”对应的解密数值是 。
(加试题)有如下VB程序段:
s = "7218634594" :n = Len(s)
t = 0
For i = 1 To n - 1
a(i) = Val(Mid(s, i, 2))
Next i
For i = 1 To n - 2 Step 2
k = i
For j = i + 2 To n - 1 Step 2
If a(j) < a(k) Then k = j
Next j
If k <> i Then
temp = a(i): a(i) = a(k): a(k) = temp: t = t + 1
End If
Next i
Text1.Text = Str(t)
该程序段运行后,文本框Text1中显示的内容是
s = "7218634594" :n = Len(s)
t = 0
For i = 1 To n - 1
a(i) = Val(Mid(s, i, 2))
Next i
For i = 1 To n - 2 Step 2
k = i
For j = i + 2 To n - 1 Step 2
If a(j) < a(k) Then k = j
Next j
If k <> i Then
temp = a(i): a(i) = a(k): a(k) = temp: t = t + 1
End If
Next i
Text1.Text = Str(t)
该程序段运行后,文本框Text1中显示的内容是
A.1 | B.2 | C.3 | D.4 |
如下VB 程序代码:
For i=3 to 15 step x
Print “∗”
Next i
下列说法中正确的是( )
For i=3 to 15 step x
Print “∗”
Next i
下列说法中正确的是( )
A.若x 的值为3,则显示5 个∗ | B.若x 的值为5,则显示4 个∗ |
C.若x 的值为0,则显示0 个∗ | D.若x 的值为-2,则显示1 个∗ |
(加试题) 有程序段
n = 0: i = 1
Do While i <= 4
y = False
For j = 5 To i + 1 Step -1
If a(j) > a(i) Then
y = True
n = n + 1
t = a(j): a(j) = a(i): a(i) = t
End If
Next i
If y = False Then Exit Do
i = i + 1
Loop
数组元素a(1)到a(5)的值依次为“43,18,5,26,51”,经过该程序加工后,变量n的值为( )
n = 0: i = 1
Do While i <= 4
y = False
For j = 5 To i + 1 Step -1
If a(j) > a(i) Then
y = True
n = n + 1
t = a(j): a(j) = a(i): a(i) = t
End If
Next i
If y = False Then Exit Do
i = i + 1
Loop
数组元素a(1)到a(5)的值依次为“43,18,5,26,51”,经过该程序加工后,变量n的值为( )
A.5 | B.4 | C.3 | D.2 |