某查找算法的VB程序段如下:
k= Val(Text1.Text)
i=1:j=6:Label1.Caption="":f=False
Do While i<=j And Not f
m=(i+j)\2
If a(m)=k Then f= True
If a(m)>a(i) Then

If a(i)<=k And k<a(m)Then j=m-1 Else i=i+1

Else

If a(m)<k And k<=a(j)Then i=i+1 Else j=j-1

End If
Label1 Caption=Label1 Caption+ Str(a(m))
Loop
数组元素a(1)到a(6)的值依次为“58,66,72,24,35,40”,在文本框Text1中输人的值为35,执行该程序段,标签 Label1中显示的值是(   )
A.72  35B.24  35
C.72  24  35D.72  24  24  35
当前题号:1 | 题型:选择题 | 难度: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的个数是个________个。
当前题号:2 | 题型: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
当前题号:3 | 题型:选择题 | 难度: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))
当前题号:4 | 题型:选择题 | 难度:0.99
星期天,小龙来到动物园游玩,园内共有N个景点(可在10个以上),每个景点都有一个标号,标号为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

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
      
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
        
If y > ans Then ans = y
k = 0
Exit Do
End If

Loop
End If

Next i

Text2.Text = Str(ans)

End Sub
(1)要使程序运行时,Form1的BackColor属性值为黑色,以下代码正确的是______(单选,填字母)。
A.Private Sub Form_Load()

Form1. BackColor = RGB(255, 255,255)

End Sub
B.Private Sub Form_Load()
Form1.BackColor = RGB(0, 0, 0)
End Sub
C.Private Sub Form1_Load()

orm1.BackColor = RGB(255,255,255)

End Sub
D.Private Sub Form1_Load()
Form1.BackColor = RGB(0, 0, 0)
End Sub
 
(2)若有7个景点,且每个景点的连接情况为:6,3,7,2,7,5,4,那么小龙最多可以游玩的景点数是__________。
(3)请把划线处的代码补充完整:
①__________
②__________
(4)程序加框处代码有错,请改正:_________
当前题号:5 | 题型:None | 难度:0.99
方格填数。在n个连续的方格内填写字母A或B但相邻两格内不能都填B。求所有可能的填写方案数。例如,n=3,可能的方案有AAA、AAB、ABA、BAA、BAB等5种
以下VB程序用于解决这个问题,在文本框Text1输入n的值,点击“求解”按钮 command1后,在列表框List1中输出所有方案。运行界面如下图所示:
提示:若用0代表A,用1代表B,那么每一种方案都对应一个n位的二进制数。

(1)要使command1按钮上显示的文本改为“求解”,可在其属性窗口中将_____(填属性名)属性的属性值改为“求解”。
实现上述功能的程序如下:
Private Sub Command1_Click ()

Dim n As Integer, m As Integer, k As Integer

Dim flag As **

Dim i As Integer, j As Integer

Dim a(1 To 1000) As Integer

   

List1. Clear  '清空文本框list1

s = ""

For i =0 To

'每一种方案对应一个n位的二进制数,枚举i对应的方案是否符合要求
m =i
For j=1 To n
a(j)= m Mod 2
 
Next j
flag =True
For 
If a(k-1)= a(k) And a(k)= 1 Then
flag = False
End IF
Next k
If flag Then
For k= 1 To n
If a (k) = 1 Then s = "B" + s Else s = "A" + s
Next k
List1. AddItem s
End If
s = ""

Next i

End Sub
(2)阅读代码,变量flag的数据类型应定义为_____
(3)加框处代码有错,请改正:__________
(4)请在划线处填入合适的代码:
①__________
②__________
③__________ 
当前题号:6 | 题型:None | 难度:0.99
分析解决问题。
有一张单据,编号为四位数,号码为:8□□0.中间两位被污浊看不出来。已知该单据能被23和37整除,请用编程求出该单据号码。
(算法设计)
设百位数字为x,十位数字为y;x和y的范围都是0到9。
4位数:8xy0=8*1000+x*100+y*10
列举()()里的两个数字的所有可能情况:
00,01,02,03,04,05,06,07,08,09
10,11,12,13,14,15,16,17,18,19
……
90,91,92,93,94,95,96,97,98,99
逐一判断找出符合条件的数字。
(参考代码)
Dim  x  as long
Dim  y  as long
Dim  n  as long
For x=0  to  9
For y=0  to  9
n=8*1000+x*100+y*10
If   then
Print n
End if
Next y
Next x
根据上述回答下列问题
(1)解决该问题采用的算法是:___________(填:解析法/穷举法/排序法/递归法)
(2)根据题意,程序中空白处应填写:______(填写字母:A/B/C/D)
A.n mod 23 =0 or n mod 37 =0
B.n\23=0 and n\37=0
C.n\23=0 or n\37=0
D.n mod 23 =0 and n mod 37 =0
(3)根据算法设计,参考程序中循环体中的语句“n=s*1000+x*100+y*10”,一共重复执行了_________次。
当前题号:7 | 题型:None | 难度:0.99
水仙花数是三维整数:其各位数字立方和等于该数本身,如153=13+53+33,如果要求出所有的水仙花数,下列算法最合适的是()
A.查找法B.解析法C.排序法D.穷举法
当前题号:8 | 题型:选择题 | 难度:0.99
小李忘记了密码箱上设置的三位数密码,于是他从“000”开始尝试,一直到成功打开密码箱为止。这种解锁方法采用的算法是( )。
A.解析算法B.穷举算法C.递归法D.选择排序
当前题号:9 | 题型:选择题 | 难度:0.99
(加试题)用一个6*5矩阵表示地图,分别用a数组元素表示,第1行从左到右为a(1)到a(6),依次类推,右下角为a(30)。其中数字0表示不通,数字1I表示畅通。现在要从左上角到右下角寻找一条畅通的路径。线路规则如F:
•路线每个位置只能向右或向下
•任何一个岔口优先向右走,右侧不通再向下走
•一条路线中每个位置只能走一次,不能重复
算法思路:探路过程中,记录每个位置坐标到数组lu;遇到岔路口(向右向下都通),则记录路口坐标到数组cha;遇到前方无路时,需要返回到上一个路口,标记路口右侧不通;当前方无路,岔路口数组也退回到0,说明整体不通,否则根据规则走到右下角为止,最后输出整体线路坐标。
实现算法的程序如下,运行结果如图所示。
回答下列问题:
(1)根据规则,如图迷宫矩阵正确路线的第6个位置是a数组的第_________个元素(填数字)

(2)在程序划线处填上合适代码,使程序完整。
Dim a(1 To 50) As Integer
Private Sub Command1_Click()
Dim i As Integer,j As Integer,pos As Integer
Dim cha(1 To 10)As Integer'记录一条路线中各个岔路口
Dim lu(1 To 10) As Integer’记录路线经过的位置
pos=1:j=0:lu(1)=1:i=1
Do While i <=9‘第1个和最后1个固定,中间有9个需要路过的路径点

If pos Mod 6<>0 And a(pos+1)=1 Then' 向右畅通

If pos+6 <=30 and a(pos+6)=1 Then‘记录岔路口
j=j+1
_____________
End If
pos=pos+1
i=i+1
1u(i)=pos
Else If pos+6 <=30 And a(pos+6)=1 Then’向下畅通
pos=pos+6
i=i+1
lu(i)=pos
Else’坐标退回到上一个岔路口
If j=0 Then Exit Do
Do While lu(i)<>cha(j)
_____________
Loop
a(cha(j)+1)=0’标记此路口右侧不可用
_____________
j=j-1
End If;

Loop

If j=0 Then

Text1.Text="没有畅通道路"

Else

For i=1 To 10
Text1.Text=Text1.Text+Str(lu(i))
Next i

End If

End Sub
Private Sub Form_Load()

‘生成图形矩阵的数组a各个元素,并在列表框显示,代码略

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