- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 算法实例
- 面向对象程序设计 VB开发工具
- + 算法实例的程序实现
- 过程和自定义函数
- 枚举算法及程序实现
- 解析算法及程序实现
- 递归算法及程序实现
- 排序算法及程序实现
- 查找算法及程序实现
- 算法及算法的表示方法
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
国内特快专递每200克为一个计费单位,200克以内22元,200克以上每续重200克(不足200克以200克计算)8元,现在要编写一个程序输入包裹重量自动计算出价格。解决上述问题,最合适的算法是( )
A.解析算法 | B.枚举算法 | C.排序算法 | D.递归算法 |
下列VB程序模块可以计算正整数n阶乘的值。
Function f(n As Integer) As Integer
If n < =" 1" Then
f = 1
Else
f =" n" * f(n - 1)
End If
End Function
该模块采用的算法是( )
Function f(n As Integer) As Integer
If n < =" 1" Then
f = 1
Else
f =" n" * f(n - 1)
End If
End Function
该模块采用的算法是( )
A.枚举 | B.查找 | C.排序 | D.递归 |
有8个西瓜的重量(单位:斤)分别是5.2,4.5,4.1,3.5,8.3,7.4,3.8,7.5。若采用选择排序算法对其进行从小到大排序,共需交换数据的次数是( )
A.4 | B.5 | C.6 | D.7 |
下列VB程序的功能是:程序运行时,单击命令按钮Commandl后,产生10个[1,999]范围内互不相同的随机整数,依次显示在列表框List1中,然后将它们按从小到大的顺序排序,排序结果显示在列表框List2中。数组a用于存储产生的10个随机整数,函数f(x)用于判断随机整数x与已生成的整数是否有重复,若有重复则返回True,否则返回False。
(1)虚线框内程序段所采用的排序算法名称是 。(填:冒泡排序/选择排序)
(2)在程序(1)和(2)划线处,填入适当的语句或表达式,把程序补充完整。
Dim a(1 To 10) As Integer
Function f(x As Integer) As Boolean ′代码略
End Function
Private Sub Commandl_Click()
Dim n As Integer ′n用于统计已经产生的随机整数个数
Dim i As Integer.j As Integer
Dim x As Integer.k As Integer
Randomize ′初始化Rnd函数
n=0
List1.Clear ′清除列表框中内容
List2.Clear
Do While n<10
x=Int(Rnd*999)+1 ′产生[1,999]范围内的随机整数
If Not f(x) Then
n=n+1
a(n)="x"
List1.AddItem Str( (1) )
End If
Loop
For i="1" To 9 ′进行排序
For j="10" To i+1 (2)
If a(j)<a(j-1) Then
k=a(j):a(j)=a(j-1):a(j-1)=k
End If
Next j
Next i
For i="1" To 10
List2.AddItem Str(a(i))
Next i
End Sub
(1)虚线框内程序段所采用的排序算法名称是 。(填:冒泡排序/选择排序)
(2)在程序(1)和(2)划线处,填入适当的语句或表达式,把程序补充完整。
Dim a(1 To 10) As Integer
Function f(x As Integer) As Boolean ′代码略
End Function
Private Sub Commandl_Click()
Dim n As Integer ′n用于统计已经产生的随机整数个数
Dim i As Integer.j As Integer
Dim x As Integer.k As Integer
Randomize ′初始化Rnd函数
n=0
List1.Clear ′清除列表框中内容
List2.Clear
Do While n<10
x=Int(Rnd*999)+1 ′产生[1,999]范围内的随机整数
If Not f(x) Then
n=n+1
a(n)="x"
List1.AddItem Str( (1) )
End If
Loop
For i="1" To 9 ′进行排序
For j="10" To i+1 (2)
If a(j)<a(j-1) Then
k=a(j):a(j)=a(j-1):a(j-1)=k
End If
Next j
Next i
For i="1" To 10
List2.AddItem Str(a(i))
Next i
End Sub
有如下Visual Basic程序:
Private Sub Command1_Click( )
Dim s As Integer
Dim I As Integer
S=0
For i="1" To 10
s=s+i\7
Next i
Text1.text=str(s)
End sub
该程序段运行后,文本框Text1中显示__________
Private Sub Command1_Click( )
Dim s As Integer
Dim I As Integer
S=0
For i="1" To 10
s=s+i\7
Next i
Text1.text=str(s)
End sub
该程序段运行后,文本框Text1中显示__________
某VB程序的一个事件过程如下:
Private Sub Commandl_Click()
Dim i As Integer,j As Integer.s As String
Dim a(1 To 5) As Integer
List1.Clear
Randomize
For i="1" To 10
j="Int(Rnd*6)+1"
a(j)=a(j)+1
Next i
For i="1" To 5
s=Str(a(i))
List1.AddItem s
Next i
End Sub
程序运行时,单击按钮Commandl后弹出如图所示的错误提示。出现错误的语句是( )

Private Sub Commandl_Click()
Dim i As Integer,j As Integer.s As String
Dim a(1 To 5) As Integer
List1.Clear
Randomize
For i="1" To 10
j="Int(Rnd*6)+1"
a(j)=a(j)+1
Next i
For i="1" To 5
s=Str(a(i))
List1.AddItem s
Next i
End Sub
程序运行时,单击按钮Commandl后弹出如图所示的错误提示。出现错误的语句是( )

A.j=Int(Rnd*6)+1 | B.a(j)=a(j)+1 |
C.s=Str(a(i)) | D.List1.AddItem s |
下列VB程序运行时,单击命令按钮command1后,在列表框 list1 中输出的是_______________。
Private Sub Command1_Click()
Dim I as integer
For i=1 to 10 step 2
If i>=5 then
List1.additem str(i-3)
Else
List1.additem str(i)
Next i
End Sub
Private Sub Command1_Click()
Dim I as integer
For i=1 to 10 step 2
If i>=5 then
List1.additem str(i-3)
Else
List1.additem str(i)
Next i
End Sub
下表记录了6个数据的排序过程。分析表中数据可知,该排序采用的算法与排序方式分别为( )
原始数据 | 65 | 57 | 59 | 44 | 45 | 69 |
第1遍 | 44 | 65 | 57 | 59 | 45 | 69 |
第2遍 | 44 | 45 | 55 | 57 | 59 | 69 |
第3遍 | 44 | 45 | 57 | 65 | 59 | 69 |
… | … | … | … | … | … | … |
A.冒泡排序,升序 | B.选择排序,升序 |
C.冒泡排序,降序 | D.选择排序,降序 |
设计VB程序,该程序将输入的字符串中小写字母转换成大写字母后输出。在文本框Text1中输入一串字符(数字、字母均可),单击“转换”按钮Command1,在标签Label2中输出结果。(提示:Asc(x):将字符x转换为ASCII码值;Chr(x):将ASCII代码x转换为所对应的字符)该程序的设计界面如图所示,请根据算法将下列程序补充完整。

Private Sub Command1_Click()
Dim ch As String, s As String
Dim i As Integer, j As Integer
ch = Text1.Text
For i =" 1" To (1)
j =" Asc(Mid(ch," i, 1))
If j > 96 And j < 123 Then
s =" s" + Chr(j - 32)
Else
s =" s" + Chr(j)
End If
Next
(2)
End Sub

Private Sub Command1_Click()
Dim ch As String, s As String
Dim i As Integer, j As Integer
ch = Text1.Text
For i =" 1" To (1)
j =" Asc(Mid(ch," i, 1))
If j > 96 And j < 123 Then
s =" s" + Chr(j - 32)
Else
s =" s" + Chr(j)
End If
Next
(2)
End Sub
杭州市民卡是由杭州市人民政府授权发放给市民用于办理个人相关事务和享受公共服务的集成电路卡(IC卡),具有信息储存、身份识别、电子支付等功能。每位市民卡的卡号是唯一的,卡内会记录每位市民的姓名、住址、金额等信息。
假设共有1000个市民,市民的相关信息都存储在“information.accdb”的data表中,查询程序界面如图所示。工作人员在文本框Text1中输入卡号,单击“开始查询”按钮,如果找到,就在Label1中显示卡内市民姓名和卡内余额;否则显示“查无此人”。请按要求将下列程序补充完整。

Private Sub command1_click()
Dim conn As New ADODB.Connection, rs As New ADODB.Recordset
Dim strSQL As String
Dim a,b as string ‘分别定义姓名、余额
Dim n as integer
conn.ConnectionString = "Provider="Microsoft.ACE.OLEDB.12.0;Data" Source=" + App.Path + "\information.accdb" '打开到数据库的链接
conn.Open
strSQL ="select xh,xm from data where '卡号=&(Text1.Text) & '" '设置查询的SQL语句
Set rs.ActiveConnection = conn '设置rs的ActiveConnection属性,指定与其关联的数据库链接
rs.Open strSQL '打开记录集,将从表information中读取的结果保存到记录集rs中
Label1.Caption = ""
n=0
Do while not rs.EOF
①
a=rs.Fields("姓名")
b=rs.Fields("余额")
rs.movenext
loop
rs.Close
conn.close
set rs=nothing
set conn=nothing
②
if n="0" then Label1.caption="查无此人"
End Sub
(1)程序中①划线处应填入___________________。
(2)程序中②划线处应填入___________________。
假设共有1000个市民,市民的相关信息都存储在“information.accdb”的data表中,查询程序界面如图所示。工作人员在文本框Text1中输入卡号,单击“开始查询”按钮,如果找到,就在Label1中显示卡内市民姓名和卡内余额;否则显示“查无此人”。请按要求将下列程序补充完整。

Private Sub command1_click()
Dim conn As New ADODB.Connection, rs As New ADODB.Recordset
Dim strSQL As String
Dim a,b as string ‘分别定义姓名、余额
Dim n as integer
conn.ConnectionString = "Provider="Microsoft.ACE.OLEDB.12.0;Data" Source=" + App.Path + "\information.accdb" '打开到数据库的链接
conn.Open
strSQL ="select xh,xm from data where '卡号=&(Text1.Text) & '" '设置查询的SQL语句
Set rs.ActiveConnection = conn '设置rs的ActiveConnection属性,指定与其关联的数据库链接
rs.Open strSQL '打开记录集,将从表information中读取的结果保存到记录集rs中
Label1.Caption = ""
n=0
Do while not rs.EOF
①
a=rs.Fields("姓名")
b=rs.Fields("余额")
rs.movenext
loop
rs.Close
conn.close
set rs=nothing
set conn=nothing
②
if n="0" then Label1.caption="查无此人"
End Sub
(1)程序中①划线处应填入___________________。
(2)程序中②划线处应填入___________________。