有如下所示VB程序段:

str1 = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”

s = “”

For i = 1 To 4

t = Int(Rnd*10) + 1
If t Mod 2  =  i Mod 2 Then
t  = t + 1
Else
t = t + 2
End If
s = s + Mid(str1,t,1)

Next i

List1.AddItem s

执行该程序段后,列表框Listl中可能显示的内容是( )
A.BADCB.BCDYC.DEFGD.CDEF
当前题号:1 | 题型:选择题 | 难度:0.99
星期天,小杰来到动物园游玩,园内共有 N 个景点,每个景点都有一个标号,标号为 1 至 N。现在只知道每个景点均有一条路连接下一个景点。小杰想知道,根据这些道路信息,从其中一个景点出发,最后再回到出发景点,最多能游玩多少个景点。
例如,共有 N=5 个景点,每个景点连接的下一个景点分别是2,4,5,5,2,
景点号
1
2
3
4
5
下一景点号
2
4
5
5
2
 
则他可以从 2 号景点出发,最多可以游玩 2号、4号、5号三个景点。

程序代码如下:
Private Sub Command1_Click()
Dim a(1 To 100) As Integer , d(1 To 100) As Integer '数组 a 存放下一景点号
Dim jd As String, m As String,c As Integer,I As Integer
Dim s As Integer, p As Integer,k As Integer,ans As Integer
jd=Text1. Text+","
s=0 : c=0
For i=1 To Len(jd)
m=Mid(jd,i,1)
If m<>"," Then
s=s∗10+Val(m)
Else
c=c+1 :a(c)=s : s=0    '含义
End If
Next i
ans=0:k=0
For i=1 To c    '枚举游览起点
For k=1 To c
d(k)=0
Next k
If d(i)=0 Then
p=i
Do While p<=c
If d(p)=0 Then
k=k+1 :d(p)=k
Else
y=      '填空
If y>ans Then ans=y
k=0
Exit Do
End If
'改错
Loop
End If
Next i
Text2. Text=Str(ans)
End Sub
(1)若要实现显示“景点连接情况:”的 Text1 在程序运行时默认为空,则需要将 Text1 的_________________属性设置为空。
(2)若有 7 个景点,且每个景点的连接情况为 6,3,7,2,7,5,4,那么小杰最多可以游玩的景点数是_________________。
(3)程序代码中,有下划线的语句“a(c)= s”代表的含义为___________________________。
(4)程序代码中,在①处填空:y=_____________________。
(5)程序代码中,加框处代码有错,请改正:__________________________________。
当前题号:2 | 题型:None | 难度:0.99
工资问题:某古老的工作和工资计算方式比较奇特,其工作要求如下:必须从1月1日当天开始工作,且连续工作n(n<=365)天才一次性结算得到工资。某年(假设当年为平年)的工资计算细则是:第1天获得1枚金币,接下来的2天(第2天和第3天)每天获得2枚金币,再接下来的3天(第4、5、6天)每天获得3枚金币,……,依次类推,即当连续n天每天获得n枚金币后,会在之后的连续n+1天里,每天获得n+1枚金币。
小王用VB编写了工资计算程序,当输入连续工作的最后一天的日期后,单击“计算”按钮Command1,程序自动计算工资总额,其运行界面如图所示。

实现上述功能的VB程序如下,请回答下列问题:
(1)下列选项中,属于鼠标“单击”事件的是_______。(单选,填字母:
A.DblClick/B.Load/C.Click)
(2)请在划线处填入合适的代码。
①__________
②__________
(3)加框处的代码有错误,请改正。
__________
Private Sub Command1_Click()
Dim i As Integer,j As Integer,k As Integer
Dim m As Integer,d As Integer,n As Integer
Dim md As String,sum As Integer
md = "312831303130313130313031"
n = 0
m = Val(Text1.Text)
d = Val(Text2.Text)
For i = 1 To m - 1
n =    
Next i
n = n + d
i = 0:j = 0
sum = 0:k = 1
Do While i < n
sum =
j = j + 1
If    Then
j = 0
k = k + 1
End If
i = i + 1
Loop
Text3.Text = Str(sum)
End Sub
当前题号:3 | 题型:None | 难度:0.99
小杨同学编写了一个VB程序用于学校里7选3选课情况统计。该程序主要功能有:1.点击“生成选课组合”按钮 Commandl,生成35种选课组合;2.点击“统计选课情况”按钮 Command2,统计出各种组合的选课人数;运行界面如下图。实现上述功能的VB程序如下,请回答下列问题:

(1)分析程序代码,如图里“选课组合”序号为30的组合名称为:___________________。
(2)请在划线处填入合适的代码。请回答下列问题:
Dim zh(1 To 16) As String, zrs As Integer
Dim xk(1 To1000) As String'存放同学的选课科目组合,已知学生人数少于1000人
Dim zh2(1 To 35) As String'存放35种选课科目组合
Dim rstj(1 To 35) As Integer'存放各种选课组合选课人数
Private Sub Form_ Load()
‘本过程从数据库中读取学生的选课情况数据,存放在数组xk中,学生的总人数存放在变量zrs。’代码略
End Sub
Private Sub Command l_ Click( )
Dim i As Integer,j As Integer, m As Integer, n As Integer, k As Integer
Dim km(1 To 7)As String
Listl.Clear
List1. AddIton“序号”+“” +“组合名称”
km(1)= “物”:km(2)= “化”:km(3)= “生”km(4)= “政”
km(5)= “史”km(6)= “地”:km(7)= “技”
m= 1
For i= 1 To 5
For k= i+1 To 6

zh(m)=km(i)+ km(k)

m= m+ 1

Next k
Next i
j= 3:n= 1:y= j
For i= 1 To m

For k= y To 7

zh2(n)=___________________________________
If n< = 9 Then
Listl. AddItem n &""&" "& zh2(n)
Else
Listl. AddItem n &"  "& zh2(n)
End If
n= n+ 1

Next k

y= y+ 1

If y=8 Then

j= ___________________________  :y= j

    End If
Next i
End sub
Private Sub Command2_ Click( )
Dim i As Integer

List2. Clear

List2. Additon"组合名称"+""+"选课人数”

For i= 1 To 35

rstj(i)=_____________________________

List2 AddItem zh2(i)+" "+ Str (rstj (i))
Next i
End Sub
Function tj (zhmc As String) As Integer'统计某种选课组合的选课人数
Dim i As Integer, rs As Integer
rs= 0
For i= I To zrs

If zhmc = xk(i) Then

rs= rs+ 1

End If

Next i
tj= rs
End Function
当前题号:4 | 题型:None | 难度:0.99
算法设计与程序实现
换钱问题:
要将一张100元的钞票,换成等值的5元、2元、1元一张的钞票共50张。其中一种换法如下:
5元:3张
2元:38张
1元:9张
求出所有的换钱方案。
(算法设计)
x表示5元的张数:1≦x≦20;
y表示2元的张数:1≦y≦50;
z表示1元的张数:1≦z≦100。
(参考程序)
Dim x AsInteger
Dim y AsInteger
Dim z As Integer
For x=1 To20
For y=1To 50
Forz=1 To 100
If ______________Then
Print x;y;z ’x y z 之间以分号分隔
End If
Nextz
Next y
Next x
根据上述回答下列问题:
(1)本题采用的算法是_____________(填:解析法/枚举法/排序法/递归法)。
(2)程序代码中空白处应填写的条件是_______________(填写字母:A/B/C/D)。
A  5x + 2y + z=100   Or  x+ y + z = 50
B  5x + 2y + z=100   And x + y + z = 50
C  5*x + 2*y + z=100 Or x + y + z = 50
D  5*x + 2*y + z=100 And  x + y + z = 50
当前题号:5 | 题型:None | 难度:0.99
选择算法,解决问题。
在使用计算机解决问题时,选择合适的算法,是有效解决问题的关键。
分析下面的问题,请选择最合适的算法:__________(请用英文字母填写)
A.解析法B.递归法C.穷举法D.排序法
搬砖问题:100块砖,100人搬,一个男人搬4块,一个女人搬3块,两个小儿抬1块,要求一次全搬完。请问需男、女、小儿各多少人?
当前题号:6 | 题型:填空题 | 难度:0.99
趣味数学题:n的阶乘n!=1*2*3*4*5*…*n,当n≥5时,其结果末尾必然包含多个0,求n!(5≤n≤32 726)末尾包含0的个数。
算法思路:n较大时,n!的值将超出long类型范围,求出n!的结果再数0的个数不现实。那么末尾的0到底是从哪里来的?每一个因子5与任一偶数相乘就会产生一个0。所以末尾有多少0是由因子5的个数决定的,求出因子5的个数即是末尾0的个数。程序运行界面和代码如图所示。

(1)为使窗体加载时,窗体标题栏自动显示为“第14题程序”,则可以在___________过程(填写过程名)中添加代码:Form1. Caption="第14题程序"。
(2)实现上述算法的VB程序如下,请补充程序中画线处的代码。
Private Sub Command1_Click()
Dim n As Integer
n=Val(Textl. Text)
i=1
Do While___________
s=s+n\5^i
i=i+1
Loop
List1. AddItem Str(n)+"!末尾包含0的个数:"+_______
End sub
(3)根据上述算法,2018!末尾包含0的个数是个________个。
当前题号:7 | 题型:None | 难度:0.99
下面程序的功能是:产生20个[1,100]范围内的随机整数,并统计这20个随机数中的整数的个数(重复出现算1个),结果显示在标签Label1中。例如:5个随机数[10,20,20,31,32]中不重复数字个数为3。程序部分代码如下:
count = 0
For i = 1 To 20
a(i) = Int(Rnd ∗ 100) + 1
Next i
For i = 1 To 20
   
Next i
For i = 1 To 100
If b(i) <> 0 Then count = count + 1
Next i
Label1.Caption= "不重复数字个数" + Str(count)
为实现上述功能,则程序①处应填入的语句为(   )
A.b(i)=1B.b(a(i))=a(b(i))+1C.b(i)=b(i)+1D.b(a(i))=b(a(i))+1
当前题号:8 | 题型:选择题 | 难度:0.99
编写VB程序,实现如下功能:在文本框Text1中输入一个大于1000的正整数,单击按钮Command1后会去除其中3个数字,保证余下的数字在不改变顺序的情况下其数值最大,然后在文本框Text2中输出该数。

Private Sub Command1_Click()
Dim s As string
Dim n As Integer,w As Integer
s=Text1.Text
For i=1 To 3

n=Len(s):w=1

For j=2 To n

If ________ Then w=j Else Exit For

Next j

s=Mid(s,1,w-1)+Mid(s,w+l,n-w)

Next i
Text2.Text=s
End Sub
画线处的正确代码为(   )
A.Val(Mid(s,w,1))<=Val(Mid(s,j,1))
B.Val(Mid(s,j,1))<=Val(Mid(s,j+1,1))
C.Val(Mid(s,w,1))>=Val(Mid(s,j,1))
D.Val(Mid(s,j,1))>=Val(Mid(s,j+1,1))
当前题号:9 | 题型:选择题 | 难度:0.99
Base64编码是计算机中常见的一种编码方式,规则是把3个字节(24位)的数据按6位1组分成4组,然后将每组数据分别转换为十进制,根据下图将这些十进制数所对应的字符连接,即为Base64码。

以编码字符“Web”为例,字符“Web”对应的ASCII编码分别是87,101,98,分别转换为8位二进制数,按6位二进制数分组后再转换成十进制,查找他们的对应字符,得到“Web”的Base64编码为“V2Vi”。
(1)若某字符串的Base64编码为“QWEw”,则其原文是____________
(2)小高根据上述描述,设计了一个如下的将n(n是3的整数倍)个ASCII编码字符转换Base64
编码的VB程序,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim  a(1 To 100)  As Integer , b(1 To 100)  As  Integer
Base64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
chr_asc = Text l. Text
n=Len (chr asc)
For  i=1 To n
______________‘①填空
Next i
For  i=0 To____________'②填空
b(i*4+1)=a(i*3+1)\4
b(i*4+2)=(a(i*3+1)Mod 4)*16+a(i*3+2)\16
b(i*4+3)= _____________③填空
b(i*4+4)=a(i*3+3) Mod 64
For  j=1 To 4
chr base = chr_base + Mid(Base64 , b(i*4+j)+1,1)
Next  j

Next  i

Text2. Text =chr_base

End Sub
当前题号:10 | 题型:None | 难度:0.99