- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- + 算法实例
- 枚举算法
- 解析算法
- 排序算法
- 查找算法
- 递归算法
- 面向对象程序设计 VB开发工具
- 算法实例的程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
数组a中的数据存放情况如下表:若用对分法查找数值8,需要查找( )次。
a[1] | a[2] | a[3] | a[4] | a[5] | a[6] | a[7] | a[8] | a[9] | a[10] | a[11] | a[12] |
2 | 5 | 8 | 10 | 21 | 23 | 36 | 37 | 41 | 47 | 52 | 55 |
A.5 | B.4 | C.3 | D.2 |
设某汉字由7×7的0、1点阵图案组成。依照以下规则生成压缩码:连续一组数值,从汉字点阵图案的第一行第一个符号开始计算,按书写顺序由左到右,从上到下。压缩码第一个数表示起始的数字(例如0),第二个数表示连续有几个0,第三个数表示接下来连续有几个1,第四个数表示接下来连续有几个0,第五个数表示接下来连续有几个1,以此类推……

例如,以下汉字点阵图案:
0001000
0001000
0001111
0001000
0001000
0001000
1111111
对应的压缩码是031616431616137(第一个数是c(0或者1),表示一开始时的数字为0或1)。
(1)请将程序代码补充完整。
Private Sub Command1_Click()
Dim code As String, c As Integer, res As String,k As Integer
code=Text1.Text
k=0
res=""
c=Val(Mid(code,1,1))
For i=2 To Len(code)
For j=1 To _____________ '①
res=res+Str(c)
k=k+1
If k=7 Then
List1.AddItem res
k=0
res=""
End If
Next j
_______________ '②
Next i
End Sub
(2)现给出如下点阵图:

则压缩码为_________________________________。

例如,以下汉字点阵图案:
0001000
0001000
0001111
0001000
0001000
0001000
1111111
对应的压缩码是031616431616137(第一个数是c(0或者1),表示一开始时的数字为0或1)。
(1)请将程序代码补充完整。
Private Sub Command1_Click()
Dim code As String, c As Integer, res As String,k As Integer
code=Text1.Text
k=0
res=""
c=Val(Mid(code,1,1))
For i=2 To Len(code)
For j=1 To _____________ '①
res=res+Str(c)
k=k+1
If k=7 Then
List1.AddItem res
k=0
res=""
End If
Next j
_______________ '②
Next i
End Sub
(2)现给出如下点阵图:

则压缩码为_________________________________。
单循环赛制是一种较为公平合理的比赛制度,比赛过程中所有参赛队伍均能相遇一次。其秩序编排可采用“逆时针轮转方法”:数字 1~ n 依次作为队伍编号,把编号按 U 型走向分成均等两边(若 n 为奇数,则在末尾增加编号 0,使总数为偶数),即可得到第一轮的比赛秩序,例如,5 个队伍的比赛编排情况如图 a 所示;第二轮,固定编号 1,其余编号均按逆时针方向移动一个位置,即为该轮比赛秩序;以后各轮比赛秩序以此类推,与编号 0 对阵的表示本轮轮空。
小赵这此编写了 VB 程序,功能如下:在文本框 Text1 中输入参赛队伍数 n,单击“编排”按钮 Command1,在列表框 List1 中输出每轮比赛秩序。程序运行效果如图 b 所示。

实现上述功能的 V B代码如下,请将程序代码补充完整。
Private Sub Command1_Click()
Dim team(1 To 20) As String
Dim n As Integer, c As Integer
Dim result As String
Dim i As Integer, j As Integer, temp As String
n=Val(Text1.Text)
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 c-1
result=""
For j=1 To c\2
result=result&team(j)&"-"&______________&";" ‘(1)
Next j
List1.AddItem "第"&Str(i)&"轮"&result
temp=team(c)
For j=c To 2 Step -1
_________________ ‘(2)
Next j
End Sub

小赵这此编写了 VB 程序,功能如下:在文本框 Text1 中输入参赛队伍数 n,单击“编排”按钮 Command1,在列表框 List1 中输出每轮比赛秩序。程序运行效果如图 b 所示。

实现上述功能的 V B代码如下,请将程序代码补充完整。
Private Sub Command1_Click()
Dim team(1 To 20) As String
Dim n As Integer, c As Integer
Dim result As String
Dim i As Integer, j As Integer, temp As String
n=Val(Text1.Text)
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 c-1
result=""
For j=1 To c\2
result=result&team(j)&"-"&______________&";" ‘(1)
Next j
List1.AddItem "第"&Str(i)&"轮"&result
temp=team(c)
For j=c To 2 Step -1
_________________ ‘(2)
Next j
_________________ ‘(3)
Next iEnd Sub
《孙子算经》中有一个“物不知其数”的问题,某数以3除余2,以5除余3,以7 除余 2。下面的 VB 程序用于求 1000 以内满足该条件的自然数及个数,请在程序划线处应填入合适的表达式。
Private Sub Command1_Click() Dim c As Integer, n As Integer c = 0 : n = 9
Do While n <= 1000
If n Mod 3 = 2 And n Mod 5 = 3 Then
List1.AddItem Str(n)
c = _____________
End If
n = _____________
Loop
Label1.Caption = "1000 以内满足条件的数有" & Str(c)& "个"
End Sub
Private Sub Command1_Click() Dim c As Integer, n As Integer c = 0 : n = 9
Do While n <= 1000
If n Mod 3 = 2 And n Mod 5 = 3 Then
List1.AddItem Str(n)
c = _____________
End If
n = _____________
Loop
Label1.Caption = "1000 以内满足条件的数有" & Str(c)& "个"
End Sub
设有n盏灯,放在一排。从1 到 n依次顺序编号。有 n个人也从1到n依次编号。第1个人(1号)将灯全部关闭,第2个人(2号)将凡是2的倍数的灯打开,第3个人(3号)将凡是3的倍数的灯做相反处理(该灯如果为打开的,则将它关闭,如关闭的将它打开),以后的人和3号一样,将凡是自己号数倍数的灯做相反处理。问当n个人操作后,哪几盏灯是亮的。(亮灯为0,关闭为1)
为了实现这一目标,完善下列程序,使之能完成该功能。
Private Sub Command1_Click()
Const n=20
Dim i As Integer,j As Integer
Dim a(1 To n) As integer
For j=1 To n
a(j)=0
Next j
For i=1 To n
For j=1 To n
If j Mod i=0 Then
______________ ‘(1)
End If
Next j
Next i
For j=1 To n
If ________ Then List1.AddItem Str(j) ‘(2)
Next j
End Sub
为了实现这一目标,完善下列程序,使之能完成该功能。
Private Sub Command1_Click()
Const n=20
Dim i As Integer,j As Integer
Dim a(1 To n) As integer
For j=1 To n
a(j)=0
Next j
For i=1 To n
For j=1 To n
If j Mod i=0 Then
______________ ‘(1)
End If
Next j
Next i
For j=1 To n
If ________ Then List1.AddItem Str(j) ‘(2)
Next j
End Sub
一辆卡车运矿石,晴天每天运20次,雨天每天最多运12次,他一共运了8天,共112次,则晴天和雨天各有几天。用VB程序来解决这个问题,单击按钮Command1,在文本框Text1中输出晴天的天数,在文本框Text2中输出雨天的天数,程序代码如下:
Private Sub Command1_Click()
i=1
j=7
Do While ____①____
i=____②____
j=____③____
Loop
Text1.Text=Str(i)
Text2.Text=Str(j)
End Sub
则下列说法正确的是( )
Private Sub Command1_Click()
i=1
j=7
Do While ____①____
i=____②____
j=____③____
Loop
Text1.Text=Str(i)
Text2.Text=Str(j)
End Sub
则下列说法正确的是( )
A.①应填的代码为 i*20+j*12<>112 |
B.②应填的代码为i-1 |
C.③应填的代码为j+1 |
D.描述该算法的思想为解析算法 |
n个数据的冒泡升序排序需要经过n-1遍的加工,每一遍加工自下而上比较相邻两个数据,把较小者交换到上面,在第i遍加工过程中需要进行n-i对数据的比较,在某些情况下,第i遍加工过程中,在上面部分较小数据已经有序情况下,不需要再进行n-i对数据的比较。如对“17,18,19,24,23,20”这6个数据排序中,第1遍排序结束后数据为“17,18,19,20,24,23”,第2遍排序时不再需要对20及其前面4个数据进行比较。程序界面如下图所示

以下程序实现了冒泡排序的优化,请在划线处填写合适的代码。
Dim n As Integer
Dim a (1 to 100) As Integer
Private Sub Form_Load()
‘n=10,排序前生成的数据存储在数组a中,并在列表框List1中显示
‘代码略
End Sub
Private Sub Command1_Click()
Dim i As Integer, j As Integer, start As Integer, t As Integer
①_________________
Do While i < n
start = n
For j = n To i Step ②_______________
If a(j) < a(j - 1) Then
t = a(j): ③____________ : a(j - 1) = t
start = j
End If
Next j
④______________
Loop
For i = 1 To n
List2.AddItem Str(a(i))
Next i
End Sub

以下程序实现了冒泡排序的优化,请在划线处填写合适的代码。
Dim n As Integer
Dim a (1 to 100) As Integer
Private Sub Form_Load()
‘n=10,排序前生成的数据存储在数组a中,并在列表框List1中显示
‘代码略
End Sub
Private Sub Command1_Click()
Dim i As Integer, j As Integer, start As Integer, t As Integer
①_________________
Do While i < n
start = n
For j = n To i Step ②_______________
If a(j) < a(j - 1) Then
t = a(j): ③____________ : a(j - 1) = t
start = j
End If
Next j
④______________
Loop
For i = 1 To n
List2.AddItem Str(a(i))
Next i
End Sub
某算法的部分流程图如下图所示:

执行该算法,下列描述正确的是( )

执行该算法,下列描述正确的是( )
A.t←t+2执行了4次 |
B.s≤35? 执行了4次 |
C.循环结构后,t的值为7 |
D.该算法体现了枚举算法思想 |
《浙江省电网销售电价表》中规定,不满1千伏“一户一表”居民用电价格,按以下标准计算:月用电量在50千瓦时及以下部分,每千瓦时以0.538元计算;50.1~200千瓦时部分,则每千瓦时按0.568元计算;200千瓦时以上部分,每千瓦时按0.638元计算。用流程图来表示该算法如图所示:

(1)则①和②分别应输入的内容是____________、__________________。
(2)该算法中,除了顺序结构,还包含的基本结构有____________结构。
(3)程序运行后,输入x的值,将输出________(填:

(1)则①和②分别应输入的内容是____________、__________________。
(2)该算法中,除了顺序结构,还包含的基本结构有____________结构。
(3)程序运行后,输入x的值,将输出________(填:
A.1个/ | B.2个/ | C.3个)值。 |