- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 算法实例
- 面向对象程序设计 VB开发工具
- + 算法实例的程序实现
- 过程和自定义函数
- 枚举算法及程序实现
- 解析算法及程序实现
- 递归算法及程序实现
- 排序算法及程序实现
- 查找算法及程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
①输入两电阻R1,R2的值
②计算总电阻R=

③输出总电阻
上述算法属于( )
A.枚举算法 | B.解析算法 | C.排序算法 | D.查找算法 |
①密码是八位数字,前两位为19
②最后两位数字是91
③能被77和133整除
程序界面如图所示,单击“找回密码”按钮(Command1)后,可能的密码显示在列表框List1中。


解决此问题的相应的程序如下:
Private Sub Command1_Click()
Dim i As Long, s As Long
For i = 0 To 9999
s = _____①______ 's表示该八位数密码
If ② Then '符合密码的条件,s能被77和133整除
List1.AddItem Str(s)
End If
Next i
End Sub
(1)在应用程序界面设计时,添加“List1”对象用于显示可能的密码,应使用如图所示的“控件工具箱”中的【小题1】(填写相应的编号)。
(2)将窗体Form1上显示的文本“Form1”改为“寻找密码”,可在其属性窗口中将属性【小题2】的属性值修改为“寻找密码”。
(3)解决此问题的算法是【小题3】。(填:枚举算法/解析算法/查找算法)
(4)在程序①和②下划线处,填入适当的语句或表达式,把程序补充完整:
程序中①下划线处应填入【小题4】
程序中②下划线处应填入【小题5】
判断车牌的单双号
(背景知识)
为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。(提示:(1)所有车牌号中都含有数字,并且车牌号的长度都是6;(2)以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。)
(1)输入:AD2367 | (2)输入:A8888A | (3)输入:A8963C |
输出:单号 | 输出:双号 | 输出:单号 |
(算法描述)
(1)自然语言
第1步:输入车牌号
第2步:取车牌号的最后一位x;
第3步:判断x是否为数字,如果是,转第4步;如果不是,则依次取得倒数第二、三……位判断,直到找到数字为止;
第4步:判断x 是奇数还是偶数,然后输出相应的结果。
(2)流程图请根据上述算法描述补全代码
Dim n As Integer
Dim s As String ‘定义s 为字符串类型
Dim x As String
s=InputBox(“s=”,s) ‘将输入的车牌号赋值给s
n=6 ‘车牌号的长度为6
x=Mid(s,n,1) ‘取车牌号s的第n位
Do While x<”0” Or x>”9” ‘x不是数字字符,则取x的前一位
①
x=Mid(s,n,1) ‘取车牌号s的第n位
Loop
If ② then
Print “双号”
Else
Print “单号”
End If
(提示:Mid(s,m,n)的功能:从字符串s的第m位开始,截取长度为n的子串。例如:Mid(“A8963C”,5,1)的返回值是“3”。)
1. 根据题意,程序中空白①处应填写:_______________________________ 。2. 根据题意,程序中空白②处应填写:______(填写字母:A/B/C/D)。
A、Val(x)\ 2= 0 B、Val(x)Mod 2 = 1 C、Val(x) Mod 2=0 D、Val(x) Mod 2 <> 0
Private Sub Command1_Click()
Dim a As Integer, b As Integer
a = 5: b = 3
Print work(a, b)
End SubFunction work(x As Integer, y As Integer) As Integer
If (x < y) Then
work = 0
Exit Function
End If
If (y = 0) Then
work = 1
Exit Function
End If
work = work(x - 1, y - 1) + work(x - 1, y)
End FunctionA.8 | B.9 | C.10 | D.11 |
术平均值是中位数。
小诗收集了全市部分教职员工的工资数据,设计了找中位数的程序如下。小诗收集的人员工资数据放在了 Access 数据库中。小诗的程序在窗体加载时读出了所有人员的数据:姓名放在数组a中,对应的工资放在数组b中,数据总记录数放在n中。单击按钮 Command1后先以工资按非升的次序排序,然后找出中位数。
(1)要使程序运行时,从数据库中读取所有人员的数据,可在_____________事件过程中添加相关代码。(单选,填字母:A.Form1_load/ | B.Form_load/ | C.Form1.Caption) |

Dim a(1 To 1000) As String
Dim b(1 To 1000) As Single
Dim n As Integer
‘数据库读取所有人员的数据代码略
Private Sub Command1_Click()Dim i As Integer , j As Integer , k As Integer
Dim tmp1 As Single,tmp2 As String
Dim median As Single
For i = n To 2 step -1
k = i
For j = i-1 To 1 step -1
If b(j) > b(i) Then
k = j
End If
Next j
If k <> i Then
tmp1 = b(k): b(k) = b(i): b(i) = tmp1
tmp2 = a(k): a(k) = a(i): a(i) = tmp2
End If
Next i
For i = 1 To n
List1.AddItem Str(i) & " " & a(i) & " " & Str(b(i))
Next i
If n Mod 2 = 0 Then
median =②________
Else
median = b(n\2+1)
End If
Label1.Caption = "中位数是:" & Str(median)
End Sub(2)将划线处代码补充完整。
(3)程序代码中,加框处有错,请改正。___________
(4)如图所示,数据库中一共有___________个教职员工。

(1)观察代码,该排序过程中,交换次数最多能达到______________次。
(2)实现上述功能的VB程序如下,请在划线处填入正确语句。
Dim z(1 To 100) As Integer
Dim c(1 To 100) As Integer
‘文本框获取主、次数组数据代码略
Private Sub Command1_Click()
Dim i As Integer, j As Integer
i = 1
Do While i <= 99
j = 100
Do While ①_______
If z(j) > z(j - 1) Or ②_____________Then
t = z(j): z(j) = z(j - 1): z(j - 1) = t
t = c(j): c(j) = c(j - 1): c(j - 1) = t
End If
j = j - 1
Loop
③________
Loop
List1.AddItem " " + "主" + " " + "次"
For i = 1 To 100
List1.AddItem Str(z(i)) + Str(c(i))
Next i
End SubDim d(1 to 10) as Integer
n=10 : count = 0
For i = 1 To n
count = count + 1
If ① Then
Label1.Caption = “顺序查找在数组的第” & i & “位找到了” & v
Exit For
End If
Next iIf ② Then
Label1.Caption = “顺序查找没有找到” & v
End IfA.①处的代码为key=d(i) |
B.②处的代码为i>n |
C.在最好情况下,查找结束时变量count 的值为0 |
D.当变量count 的值为10,说明已经找到了 |

变量n的值最终为0,则文本框Text1输入的数值范围可能是( )
A.(28,35) | B.(43,52) | C.[52,67] | D.[78,89] |

执行该程序段后,数组a(1)到a(6)的数据依次是( )
A.Delphi Java Pascal Python VB Swift |
B.VB Swift Python Pascal Java Delphi |
C.VB Swift Python Java Pascal Delphi |
D.Java Pascal Delphi Python Swift VB |
小杰为学校教务处编写了一个排考场座位的VB程序,考场采用“6排5列”共30人的模式,程序执行后,考生的考号与姓名显示在列表框List1中,单击“考场座位”按钮,考场号与座位显示在Text1中,程序运行界面如图所示,数据表如图


实现上述功能的VB程序如下,请回答下列问题:
(1)程序中读取的数据库文件是____________
(2)当“Form_load() 事件处理过程运行结束后,变量x的值为___________
(3)请在划线处填入合适的代码
Dim sName(100) As String
Dim kh(100) as string
Private Sub Command1_Click()
Dim y As Integer
Dim start As Integer '考场第1位数据元素的下标
Dim pa As Integer '数据库导入VB时学生数据下标
Dim pb As Integer '考场座位数据下标
Dim i As Integer,j As Integer,k As Integer,m As Integer
Dim kcsName(100) As String
start = 1
pa = start
recCount = x-1
If recCount Mod 30 <> 0 Then

For i = 1 To y '将当前考生人数添加到30的整数倍
recCount = recCount +1
sName(recCount) = " "
Next i
End If
For j = 1 To recCount / 30
pa = start
pb = start
For i = 1 To 30
kcsName(pb) = sName(pa)
pb = pb +1
If i Mod 5 = 0 Then
pa = start +i \5
Else

End If
Next i
start = start +30
Next j
Text1.Text = " "
start = 1
For k = 1 To recCount /30
m = start
Text1.Text = Text1.Text + "第" + Str(k) + "考场" + vbCrLf
'vbCrLf为换行标志符,实现Text1中内容换行显示
For i = 1 To 6
For j = 1 To 5
Text1.Text = Text1.Text +" " +kcsName(m)
m = m +1
Next j
Text1.Text = Text1.Text +vbCrLf
Next i
Text1.Text = Text1.Text +vbCrLf +vbCrLf

Next k
End Sub
Private Sub form_load()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.ConnectionString = "provider=microsoft.ace.oledb.12.0;data source=" & App.Path & "/kaochang.accdb"
conn.Open
Set rs.ActiveConnection = conn
rs.Open "select * from banji"
x = 1
List1.AddItem " 考号 姓名"
Do While Not rs.EOF '
kh(x) = rs.fields("kh")
sName(x) = rs.fields("xm")
List1.AddItem kh(x) + " " + sName(x)
x = x + 1
rs.MoveNext
Loop
rs.Close
End Sub