- 基础理论
- 数据及数据库技术
- 人工智能
- 算法理论
- 过程和自定义函数
- 枚举算法及程序实现
- + 解析算法及程序实现
- 递归算法及程序实现
- 排序算法及程序实现
- 查找算法及程序实现
- 多媒体理论
- 基础软件操作
- 算法软件操作
- 多媒体软件操作
- 网络技术应用
Private Sub Command1_Click()
Dim t As Single, h1 As Single, h2 As Single
Const g = 9.8
t = Val(Text1.Text)
h1 = (g * t ^ 2) / 2
h2 = Int(h1)
Text2.Text = Str(h2)
End Sub

Const n = 20
Dim a(1 To n) As Integer
Private Sub Command1_Click()
Dim i As Integer
Randomize
For i = 1 To n
a(i) = Int(Rnd * 1000) + 1
List1.AddItem Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, max As Integer
Dim min As Integer, sum As Single
max = a(1): min = a(1)
sum = 0
For i = 2 To n
If ________ Then max = a(i)
If a(i) < min Then min = a(i)
sum = sum + a(i)
Next i
_____________
Text1.Text = Str(max)
Text2.Text = Str(min)
Text3.Text = Str(sum)
End Sub

图 1

图 2
Private Sub ①
Dim i, j As Integer A
i = 347 B
j = i – 147 C
Text1.Text = Str(j) D
End Sub(1)该程序开始运行时,直接得出近地点的高度,则在①处应填_____________________
(2)程序运行时,出现如图所示错误,对照如图,修改一处程序以使此程序正确运行。则修改______语句(选填:A/B/C/D),修改后的语句为_________________
小张设计了一个算法来输出所有的水仙花数,具体程序如下。

(1)在程序中常见用于解决问题的方法有解析法、穷举法、递归法等,本题中使用了哪种方法?
___________________________________
(2)程序中定义了几个变量?
___________________________________
(3)将程序中①的代码补充完整。
___________________________________
(4)将程序中②的代码补充完整。
___________________________________
(5)在for循环结构中,循环体执行的次数是多少?
___________________________________
(6)在本题中变量c主要用来存放这个三位数中的百位、十位还是个位上的数?
___________________________________
(1)将该字符串内码分成 2 个字节一组,每个字节前补上一个 0,构成 9 位二进制,顺次链接后得到 18 位二进制;
(2)将得到的 18 位二进制数字分成 3 组,每组 6 位;
(3)在每组数字前补上两个 0,得到 3 个字节的二进制数;
(4)将(3)中得到的三个字节的二进制数分别转换为十进制数;
(5)将每个十进制数转换为 1 个加密字符,对应的“ 密码表 ”按数值由小到大依次为 012345678ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/” 小明按照上述方法,设计了一个字符串(仅包含 ASCII 字符)加密的 VB 程序,功能如下:单击“加密”按钮 Command1,程序依次将文本框 Text1 中每 2 个字符的 ASCII 码值按编码规则转换为三个加密字符,连接这些加密字符,最后在文本框 Text2 中输出加密结果。程序效果如下图所示。

实现上述功能的 VB 程序如下:
(1)在 Text1 中输入明文“AB”,用上述加密算法得到的密文为_____。
(2)实现上述功能的 VB 程序如下。请在划线处填入合适的代码。
Function cc(n As Integer) As String
Dim s As String
s = "012345678ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/"
①_____
End Function
Private Sub Command1_Click()
Dim n As Integer, s As String, i As Integer, ss As String
Dim a1 As Integer, a2 As Integer
Dim b1 As Integer, b2 As Integer, b3 As Integer
s = Text1.Text
n = Len(s)
ss = ""
For i = 1 To n Step 2
a1 = Asc(Mid(s, i, 1))
②_____
b1 = a1 \ 8
b2 = ③_____
b3 = a2 Mod 64
ss = ss + cc(b1) + cc(b2) + cc(b3) Next i
Text2.Text = ss
End Sub
(1) 要使程序运行时,窗体 Form1 标题显示“数字按序组合输出十进制数”,可在 Form_Load 事件过程屮添加语句_________(单选,填字母:
A.Form1 = "数字按序组合输出十进制数" / | B.Forml.Text="数字按序组合输出十进制数"/ | C.Form1.Caption= "数字按序组合输出十进制数")。 |

(2)实现上述功能的 VB 程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click() Dim s As String , ch As String Dim x As Integer , i As Integer s = Text1.Text
x = 0 i = 1
For i = 1 To Len(s)
①_____________
If ch >= "0" And ch <= "9" Then
②_________
End If
Next i
Text2.Text = Str(x)
End Sub
(3)若文本框 Text1 中输人的内容为“My3day65New”,单击“生成”按钮后,则文本框 Text2 中显示的内容是_____。

当输入的运算符不是加、减、乘、除四种运算符时,则输出“运算符不正确”;当进行除法运算时,如果除数为0,提示输出“除数不能为零”。
(1)若想要在程序启动时清空文本框Text4中显示的内容,需要在Form_Load()中添加________(单选,选填字母:
A.Text4.Caption="" | B.Text4.Text="" | C.Text4.Clear)语句。 |
Private Sub Command1_Click()
Dim a As Single, b As Single, ch As String
a = Val(Text1.Text)
b = Val(Text2.Text)
①______
If ch = "+" ThenText4.Text = Str(a + b)
ElseIf ch = "*" Then
Text4.Text = Str(a * b)
ElseIf ch = "-" Then
Text4.Text = Str(a - b)
ElseIf ch = "/" Then
If ②__________Then Text4.Text = Str(a / b) Else Text4.Text = "除数不能为零"
Else
③____
End IfEnd Sub
①输入两电阻R1,R2的值
②计算总电阻R=

③输出总电阻
上述算法属于( )
A.枚举算法 | B.解析算法 | C.排序算法 | D.查找算法 |
判断车牌的单双号
(背景知识)
为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。(提示:(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 |