0514《Visual Basic程序设计》2019年6月期末考试指导
一、考试说明
(一)说明
满分为100分,考试时间为90分钟, 考试形式为闭卷。
(二)题型及各题型所占分数和相应的答题技巧
1.单项选择题(每题2分,共10题,总计20分)
答题技巧:选择与题干相匹配的答案。可以考虑排除法等选择技巧。
2.写程序运行结果(每题10分,共5题,总计50分)
答题技巧:理解程序中的代码,并写出相应的运行结果。
3. 编程题(每题30分,共1题,总计30分)
答题技巧:理解题意,注意输入输出,并编写相应的代码。
二、复习重点内容
第一章 程序设计基础
1、面向对象的程序设计
对象:用于描述某一实体。如公司、房屋、人、汽车等属性,事件,方法
类:将带有相似属性和行为的事物组合在一起。
封装:将数据和操作数据的函数衔接在一起,构成一个具有类型的对象的描述。
继承:在面向对象的语言中,可以从一个类生成另一个类。派生类(也称子类)继承了其父类和祖先类的数据成员和成员函数。
多态性:多态性是一种面向对象的程序设计功能,当同样的消息被不同的对象接收时,却导致完全不同的行为,即完成不同的功能。
第二章 Visual Basic简介
1、Visual Basic的集成开发环境(IDE)
(1)标题栏
三种工作模式: 设计模式、运行模式、中断模式。
(2)菜单栏:有两种形式:弹出和下拉
(3) 工具栏
(4)工具箱: 控件的容器
控件: 用于创建对象,每个控件都有其属性、事件和方法。单击某控件的内部,可以使该控件变为活动的。
分类: 内部控件—默认状态下工具箱中显示的控件;ActiveX控件—存于.OCX文件中,包括各种版本的VB控件,必要时可添加到工具箱中。
可插入对象—将其他应用程序产品作为一个对象加入到工具箱中。如Excel工作表、公式等。
添加选项卡: 右击工具箱→添加选项卡→输入名称
添加控件: 将控件直接拖入新选项卡
切换选项卡: 单击选项卡名称
(5)工程资源管理器窗口
工程: 每个应用程序可称为一个工程
每个工程可包括多种类型的文件
文件类型: .Vbp .Frm .Bas .Cls .Res .Ocx .Frx

打开代码窗口,除了单击“工程资源管理器”窗口中的“查看代码”按钮之外,也可以双击窗体或窗体上的控件,或按F7键
(6)属性窗口
显示: 视图→属性窗口;使用工具栏按钮;按F4键
2、可视化编程的基本概念
(1)对象
对象:代码和数据的集合。如:窗体、按钮、菜单、文本框等。
对象名: 如:Form1、Command2、Menu1、Text3
(2)属性
属性: 对象的一组特征,如:标题、宽度、字体等
属性名: 如Caption、Width、Font、Color
属性设置方法:
设计阶段在属性窗口中设置
在代码中设置: <对象名>.<属性名>=<属性值>
例: Form1.Caption= "学籍管理"
CmdOK.Caption="确定"
(3)事件
事件: 在对象上所发生的事情。如单击、双击、内容改变、尺寸改变等
事件是固定的。
事件过程: 发生某事件后所要执行的程序代码
一般格式:
Private Sub <对象名>_<事件名>([<参数表>])
<程序代码>
End Sub
当窗体被加载时,就会运行Load事件。
(4)方法
方法: 用于对对象进行一定的操作。由函数或过程实现。方法是固定的
调用格式为: [<对象名>.]方法名 [<参数表>]
3、窗体和命令按钮
(1)窗体:窗口(一般,设计期称窗体、运行期称窗口)
窗体模块: 每个窗体对应于一个窗体模块
属性:
Name(名称): 窗体的名称,且是磁盘上的窗体文 件名,扩展名为.frm。
BackColor: 窗体的背景颜色。
BorderStyle: 窗体的边框样式 。BorderStyle 属性设置值如下:
常数 | 设置值 | 描述 |
vbBSNone | 0 | 无(没有边框或与边框相关的元素)。 |
vbFixedSingle | 1 | 固定单边框。可以包含控制菜单框,标题栏,“最大化”按钮,和“最小化”按钮。只有使用最大化和最小化按钮才能改变大小。 |
vbSizable | 2 | (缺省值)可调整的边框。可以使用设置值1列出的任何可选边框元素重新改变尺寸。 |
vbFixedDouble | 3 | 固定对话框。可以包含控制菜单框和标题栏,不能包含最大化和最小化按钮,不能改变尺寸。 |
vbFixedToolWindow | 4 | 固定工具窗口。不能改变尺寸。显示关闭按钮并用缩小的字体显示标题栏。窗体在 Windows 95 的任务条中不显示。 |
vbSizableToolWindow | 5 | 可变尺寸工具窗口。可变大小。显示关闭按钮并用缩小的字体显示标题栏。窗体在 Windows 95 的任务条中不显示。 |
Caption(标题) : 窗体标题栏显示的内容。
ControlBox: 决定窗体是否具有控制菜单
Font: 窗体中输出字符的字体、大小等特性。
ForeColor: 窗体的前景颜色。
Icon: 运行时窗体处于最小化时所显示的图标。
MaxButton: 决定窗体的标题栏中是否具有最大化按钮。
Moveable: 决定窗体是否能移动
Picture: 设置要在窗体上显示的图片。
WindowState: 决定运行时窗体是正常、最小化还是最大化。
(2)命令按钮
属性:
Name(名称): 按钮对象名。必须以一个英文字母开始,且最多40个字符。不能包含标点符号或空格。
Caption: 命令按钮的标题。在字符前加一个“&”符号,该字符就会带有一个下划线,成为访问键。运行时,同时按下Alt键和带下划线的字符。
Font: 设置文字的字体、字形、大小和效果等。
Default: 指定该命令按钮是否为窗体的缺省按钮。
Cancel: 指定该命令按钮是否为窗体的取消按钮。
事件: Click; KeyDown; KeyUp; MouseDown; MouseUp等
例: Private Sub Command1_Click()
Shell "c:\windows\write.exe", vbNormalFocus
End Sub
Private Sub Command2_Click()
Command1_Click ' 选中Command1
End Sub
Private Sub Command3_Click()
Command1.Value = True ' 选中Command1
End Sub
方法: SetFocus等, 将焦点定位在指定的命令按钮上
第三章 Visual Basic程序设计代码基础
1、数据类型
主要有: 数值型;字符串型;布尔型;日期型
(1)数值型数据:Integer(整型),Long(长整型),Single(单精度浮点型),Double(双精度浮点型),Currency(货币型),Byte(字节型)
整数类型
整型(Integer)
以2个字节存储
十进制表示: 由+ -号,0~9 组成
范围: -32768~32767
八进制表示: 以&O开头,由 0~7 组成
范围: &O0 ~&O177777
十六进制表示: 以&H开头,由 0~9,A~F组成
范围: &H0 ~&HFFFF
长整型(Long)
以4个字节存储
十进制表示: 由+ -号,0~9 组成
范围: -2147483648~+2147483647
八进制表示: 以&O开头,以&结束
范围: &O0& ~&O37777777777&
十六进制表示: 以&H开头,以&结束
范围: &H0& ~&HFFFFFFFF&
实数类型
浮点数采用IEEE格式, 由尾数及指数组成:
[±]...[.... ][E|D] [±]
单精度浮点型(Single)
以4个字节存储,可以精确到7位十进制数
例: 3.234E+2 表示3.234102
-28E9 表示-28109
4.56E-17 表示4.5610-17
双精度浮点型(Double)
以8个字节存储,可以精确到16位
3.234D+2 表示3.234102
-28D9 表示-28109
4.56D-17 表示4.5610-17
(2)字符串型数据(String):由""括起来的一串符号。例: "abc" "计算机" ""(空串)
如果字符串本身包括双引号,可用连续两个双引号表示。
(3)布尔型数据(Boolean):用于进行逻辑判断,只有True和False两个值
(4)日期型数据(Date):用于表示日期和时间。格式: #……#。VB接受许多种日期时间格式
(5)对象型数据(Object):以4个字节存储,用于引用程序中的对象。
(6)可变类型数据(Variant),又称为变体类型;可以包含任何类型的数据。 可以包含 Empty、Error、及 Null等特殊值 。
2、变量
一个有名称的内存单元称为变量。程序执行期间,用变量临时存储数值。变量的值可以发生变化。每个变量都有名称和数据类型。
变量的命名规则:
第一个字符必须是字母
长度不超过255个字符
不可以包含小数点或者内嵌的类型声明字符
不能使用关键字
不能与过程名或符号常量同名
变量的声明 :
格式:Dim|Private|Public| Static <变量名> [As <类型>]
Dim: 在窗体模块、标准模块或过程中声明变量。
Private: 在窗体模块或标准模块中声明变量,使变量仅在该模块中有效。
Public: 在标准模块中声明全局变量,使变量在整个应用程序中有效。
Static: 在过程中定义静态变量,即使该过程结束,也仍然保留变量的值。
隐式声明:可变类型。易出错、浪费空间
强制显式声明:在模块的声明段中使用语句: Option Explicit
如果设置: 工具→选项→编辑器→Ö要求变量声明。则在后续模块中自动插入Option Explicit
3、运算符与表达式
(1)算术运算符与算术表达式
运算符:
( ) ^ * / \ (整除) Mod(求余) + -
优先级: ( )→^→ * /→ \ → Mod →+ -
乘方运算:例如 10^2 10的平方,结果为100
整数除法:例如10\4 结果为2
取模运算:例如10 Mod 4 结果为2
(2)字符串运算符与字符串表达式
字符串运算符有两个: & +
例: "Check" & 123 结果为"Check123"
123 + 456 结果为579
“123” + “456” 结果为“123456”
(3)关系运算符与关系表达式
比较运算符
<(小于) <=(小于或等于)
>(大于) >=(大于或等于)
=(等于) <>(不等于)
表达式: <表达式1> <比较运算符> <表达式2>
如何比较
数值比较: 按数值大小
日期比较: 按整数的值比较
单字符比较: 缺省情况下按字符的内部二进制表示比较
典型的二进制排序顺序如下:
" "<"0"<"1"<……<"9" <"A"<"B"<……"Z"
<"a"<"b"<……<"z"
字符串比较:从左开始逐个比较
比较结果: True False
(4)布尔运算符与布尔表达式
布尔运算符: Not And O
布尔表达式:<关系表达式1> <布尔运算符> <关系表达式2>
优先级: Not→And→Or
(5)表达式的运算顺序
( ) →函数运算→算术运算→关系运算→布尔运算
4、常用内部函数
数学函数
例: Fix(45.67) 结果为45
Int(45.67) 结果为45
Fix(-2.89) 结果为-2
Int(-2.89) 结果为-3
Abs(-4) 结果为4
Log(10) 结果为2.30258509299405
Sgn(3) 结果为1 返回自变量的符号
Sgn(-6) 结果为-1
Sgn(0) 结果为0
Sqr(64) 结果为8 返回自变量的平方根
字符串函数
例: LTrim("∪∪∪ABC") 结果为"ABC"
RTrim("ABC∪∪∪") 结果为"ABC"
Trim("∪∪∪ABC∪∪∪") 结果为"ABC"
Left("ABCDE",2) 结果为"AB"
Right("ABCDE",2) 结果为"DE"
Mid("ABCDE",2,3) 结果为"BCD"
Mid("ABCDE",2,6) 结果为"BCDE"
第四章 顺序结构程序设计
1、焦点和Tab键序
焦点:当前可以接收用户输入的对象称为具有焦点。
注意: 并非所有控件都可以接收焦点。而且, 只有Enable和Visible属性为True时,才可以接收焦点。
事件:GotFocus 发生在对象得到焦点;LostFocus 发生在对象失去焦点时
对象何时得到焦点:运行时选择对象(鼠标、Tab键、访问键);在代码中使用SetFocus方法
Tab键序:指按Tab键时光标在各个控件之间移动的顺序。
每个窗体都有自己的Tab键序。
默认键序与控件的建立次序一致。
TabIndex属性: 决定键序;改变TabIndex属性可以改变键序
TabStop属性: 决定是否能够使用 TAB 键将焦点移动到当前对象。
2、数据输入
赋值语句;输入框(InputBox),文本框(TextBox)
(1)用输入框(InputBox)输入数据:
格式 <变量>=InputBox(<提示信息>[,<标题>][,<默认值>])
功能:提示一对话框,等待用户输入正文或按下按钮, 并返回包含文本框内容的字符串。
<提示信息>: 字符串表达式。
可用Chr(13)、Chr(10)、、vbCrLf换行。
<标题>: 字符串表达式。
<默认值>: 字符串表达式。如果省略,则默认为空。
返回值: 字符串(在对话框中单击取消则返回"")
(2)用文本框(TextBox)输入数据
文本框的属性:
Text: 返回或设置文本框显示的内容。 例: Text1.Text = "欢迎使用Visual Basic"
MultiLine: 决定是否可以显示多行文本。
PasswordChar: 常用于输入口令。
ScrollBars: 用于确定文本框是否带滚动条以及滚动条的方向。
SelStart: 在运行期返回或设置当前选择文本的起始位置。
SelLength: 在运行期返回或设置选择的字符数。
Locked: 指定运行时文本框内容是否可以编辑。
文本框的事件和方法
事件:Change(文本框Value属性发生变化时触发)、Click、DblClick、GotFocus、LostFocus(ex4_4)、KeyPress(ex4_5) 等
方法: SetFocus
3、数据输出
(1)用Print方法输出数据
Print方法格式: [<对象名>.]Print[<表达式表>][{;|,}]
有关的函数:
Tab函数 :Tab[(n)] 在指定的第n个位置上输出数据。
Spc函数 :Spc(n) 跳过n个空格。
Format函数:Format(表达式,格式字符串)是格式输出函数可以使数值、日期按指定的格式输出。其中表达式可以是数值型、日期型或字符型的表达式。该函数的功能是:按“格式字符串”指定的格式输出“表达式”的值。如果省略“格式字符串”,则函数的功能与Str函数基本相同。唯一的差别是,当把正数转换成字符串时,Str函数在字符串前面留有一个空格,而Format函数则不留空格。
<表达式表>: 多个表达式使用逗号或分号隔开。逗号: 以14个字符位置为单位把一个输出行分成若干区段。分号: 后一项紧跟前一项输出。
(2)用消息框(MsgBox)输出数据
格式: <变量>=MsgBox(<提示信息>[,<按钮类型>][,<标题>])或:MsgBox <提示信息>[,<按钮类型>][,<标题>]
功能: 在对话框中显示消息,等待用户单击按钮,并返回一个整数告诉用户单击了哪个按钮。
第五章 选择结构程序设计
1、 单行结构条件语句
格式:If <条件> Then [<语句组1>] [Else <语句组2>]
功能:如果<条件>成立,则执行<语句组1>;否则执行<语句组2>
2、 块结构条件语句
格式:If <条件1> Then[<语句组1>]
[ElseIf <条件2> Then[<语句组2>]]
……
[ElseIf <条件N> Then[<语句组N>]]
[Else[<其他语句组>]]
End If
功能:如果<条件>成立,则执行<语句组1>;否则执行<语句组2>
3、多分支选择语句
格式:Select Case <测试表达式>
Case <表达式表1> [<语句组1>]
[Case <表达式表2> [<语句组2>]]
…
[Case Else[<语句组n>]]
End Select
功能: 根据测试表达式的值,按顺序匹配Case后的表达式,如果匹配成功,则执行该Case下的语句块,然后转到End Select语句之后继续执行。
第六章 循环结构程序设计
1、For…Next循环结构
格式:For <循环变量>=<初值> To <终值> [Step <步长>]<语句组1>
[Exit For]<语句组2>
Next [<循环变量>]
说明
(1)循环变量——数值变量
(2)初值,终值,步长——数值表达式
(3)步长——可正可负,但不能为0,为1时可以省略
步长>0时,必须: 初值<=终值
循环结束条件——循环变量的值>终值
步长<0时,必须: 初值>= 终值
循环结束条件——循环变量的值<终值
(4)Exit For——退出循环,常放在条件语句中
(5)Next之后的循环变量应与For语句中的循环变量一致,也可以省略
2、Do…Loop循环结构
特点: 已知循环条件、未知循环次数,用Do … Loop循环结构实现较方便
格式一:
Do While <条件>
[<语句组1>]
[Exit Do]
[<语句组2>]
Loop
格式二:
Do Until <条件>
[<语句组1>]
[Exit Do]
[<语句组2>]
Loop
格式三:
Do
[<语句组1>]
[Exit Do]
[<语句组2>]
Loop While <条件>
格式四:
Do
[<语句组1>]
[Exit Do]
[<语句组2>]
Loop Until<条件>
功能:
使用While <条件>: 条件为True时,执行循环体;条件为False时,退出循环
使用Until <条件>: 条件为False时,执行循环体;条件为True时,退出循环
格式一、二:在循环起始处判断条件,为当型循环
格式三、四:在循环终止处判断条件, 为直到型循环
第七章 常用内部控件
1、框架、图片框、图像框
a) 框架
作用: 作为容器,对控件进行分组
框架的常用属性
Caption:
Font:
ForeColor:
Backcolor:
Enabled:……为False时框架中的控件不可用
b) 图片框(PictureBox)
作用:作为容器,对控件进行分组;显示图像
如何显示图像: 设置Picture属性;在属性窗口中设置,对象名.Picture=LoadPicture("图形文件名")
如何清除图像:在属性窗口中删除Picture属性内容,对象名.Picture=LoadPicture() (也清除文字)
打印与清除文字:打印:对象名.Print ……清除:对象名.Cls
特点:自动调整控件大小以适应图像: AutoSize=True;不能延伸图形以适应控件的大小。
c) 图像框(Image)
作用:显示图像
如何显示图像: 设置Picture属性;在属性窗口中设置,对象名.Picture=LoadPicture("图形文件名")
如何清除图片:在属性窗口中删除Picture属性内容,对象名.Picture=LoadPicture()
特点: 可以自动调整控件大小以适应图像:设 Stretch=False
可以延伸图形以适应控件的大小:设 Stretch=True
2、选项按钮(OptionButton)
作用: 多选一(放在窗体上、或放在其他容器中)
属性:Value: True—选中,False—未选中
Alignment属性: 决定文本的对齐方式
Style—控制外观
事件:Click事件—使选项按钮从未选择变成选择状态时 (单击鼠标改变、代码改变 )
3、复选框(CheckBox)
作用:多选一或多选多(放在窗体上或其他容器中)
属性 :Value 0—未选中1—选中2—灰度状态(常用于表示不确定或部分选中)
Alignment属性: 决定文本的对齐方式
Style: 控制外观
事件:Click事件
4、列表框
(1)作用:提供选项列表、内容多时自动出现滚动条
(2)属性
Style—外形(常规形式、复选框形式)
List—列表内容。
设计时: 用Ctrl+¿换行
运行时: List(i)表示第i项
Columns—列表形式 :0:垂直单列、>0:水平多列
Text—只读、运行期用,获取当前选择项目的值
ListIndex—运行期用,当前选定项目的索引(0…)
如果未选定项目,则 ListIndex 值为 -1
ListCount—列表部分项目的个数
Sorted—元素是否自动按字母顺序排序
Selected—运行期用,用于选择某项,如List1.Selected(3)=True 选择第4项
MultiSelect:
0—缺省值,不允许复选。
1—鼠标单击、按空格键在列表中选择或取消选择
2 —按下 Shift并单击鼠标或按下 Shift 以及一个箭头键将在以前选中项的基础上扩展选择到当前选中项。按下 Ctrl 并单击鼠标在列表中选择或取消选择项。
(3) 方法
AddItem—向列表框中添加新的项目
<对象名>.AddItem <项目>[,<索引>]
RemoveItem—从列表框中移除项目
<对象名>.RemoveItem <索引>
Clear—清除所有列表的 <对象名>.Clear
5、 组合框(ComboBox)
(1)作用: 提供列表(可折叠)、文本输入
(2)属性: List—列表内容(Ctrl+Enter换行)
Style—外形:0—下拉组合框(折叠)
1—简单组合框(不折叠)
2—下拉列表框(不能修改Text属性)
Text—文本框内容
ListIndex—运行期用,当前选定项目的索引,索引从0开始
ListCount—列表部分项目的个数
Sorted—元素是否自动按顺序排序
(3)事件
组合框的事件与Style属性有关。
Style为0时: 响应Click、Change、DropDown事件
Style为1时: 响应Click、DblClick、Change事件
Style为2时: 响应Click、DropDown事件
(4) 方法
AddItem: 向组合框中添加新的项目
<对象名>.AddItem <项目>[,<索引>]
RemoveItem: 从组合框中移除项目
<对象名>.RemoveItem <索引>
Clear: 清除组合框中的所有项目
<对象名>.Clear
第八章 数组
1、数组的定义
格式Public|Private|Dim <数组名>[(<维数定义>)] [As <类型>]…
功能: 声明数组名称、维数、维大小、类型。为数组分配存储空间。
说明
<数组名>: 合法的变量名
<维数定义>:
[<下界1> To] <上界1>,[<下界2> To] <上界2>,…如果下界省略,则使用默认下界
默认下界: Option Base {0|1}
<数据类型>: Integer Long Single Double
Boolean String String[*n]
Date Variant Object
用户定义类型……
数组在定义后自动被初始化:
将可变类型数组元素值置为Empty
将数值型数组元素值置为0
将字符串类型数组元素值置为零长度字符串
分配固定的存储空间
使用以下语句初始化数组元素,不释放空间:Erase <数组名>
例: Dim B(0 to 8,0 to 3) As String
→ DIM B(8,3) As String
二维字符串类型数组
第一维: 下界0,上界 8
第二维: 下界0,上界 3
元素 B(0,0) B(0,1) B(0,2) B(0,3)
B(1,0) B(1,1) B(1,2) B(1,3)
...
B(8,0) B(8,1) B(8,2) B(8,3)
2、动态数组的定义
动态数组的定义格式,分以下两步进行:
(1) 在模块级或过程级定义一个没有下标的数组
Public|Private|Dim <数组名>()[As <类型>],…
(2) 在过程级使用ReDim语句定义数组的实际大小
ReDim <数组名>(<维数定义>) [As <类型>],…
说明:
(1) <维数定义>: 常包含明确值变量或表达式
(2) 可以用ReDim反复改变数组元素及维数的数目
(3) 若步骤(1)定义了类型,则不许用步骤(2)改变类型
(4) 执行ReDim语句将重新对数组元素进行初始化
(5) Erase <数组名>: 释放动态数组所占的存储空间
第九章 过程
1、 Function过程
①Function过程的定义
Function过程的格式
[Public|Private][Static] Function <函数过程名>
([<形参表>]) [As <类型>]
[<语句组>]
[<函数过程名> = <表达式>]
[Exit Function]
[<语句组>]
[<函数过程名> = <表达式>]
End Function
②说明
(1) Public: 缺省值。使用Public时表示所有模块的所有其他过程都可以调用该Function过程。
(2) Private: 使用Private时表示只有本模块中的其他过程才可以调用该Function过程。
(3) Static: 使用Static时表示将过程中的所有局部变量说明为静态变量。
(4) <函数过程名>: Function过程的名称,遵循变量的命名规则。
(5) <形参表>: 表示在调用时要传递给Function过程的参数变量列表。多个变量之间用逗号隔开。
<形参表>格式:
[ByVal|ByRef]<变量名>[( )] [As <类型>]
ByVal: 表示该参数按值传递。
ByRef: 缺省值。表示该参数按地址传递。
<变量名>: 遵循变量命名规则的任何变量名或数组名。
( ): 当参数为数组时使用。
(6) As <类型>: 声明函数值的类型。
(7) Exit Function语句: 从Function过程中退出。
(8) Function过程通过赋值语句:<函数过程名> = <表达式>;将函数的返回值赋给<函数过程名>。
(9) Function过程的定义不能嵌套。
Function过程的建立: 直接在代码窗口中输入。在代码窗口: 工具→ 添加过程。
2、 Sub过程
①Sub过程的定义
Sub过程的格式
[Private|Public][Static] Sub <过程名>[(<形参表>)]
[<语句组>]
[Exit Sub]
[<语句组>]
End Sub
②说明
(1) Exit Sub用于退出Sub过程。
(2) <过程名>不具有值的意义,在Sub过程中不能给<过程名>赋值,也不能给<过程名>定义类型。
(3) Sub过程通过<形参表>中的参数返回值。
(4) Sub过程的建立方法与Function过程的建立方法相同。
③Sub过程的调用
格式一: Call <过程名>[(<实参表>)]
格式二: <过程名>[<实参表>]
说明:
(1) <过程名>: 要调用的Sub过程名;
(2) <实参表>: 可以是常量、变量或表达式,各参数之间用逗号分隔。如果是数组参数,则要在数组名之后跟一对空括号。
(3) 用Call语句调用一个Sub过程时,如果过程本身没有参数,则省略<实参表>和括号。
(4) 格式二省略了Call关键字,同时<实参表>两边也不能带括号。
三、重点习题
单项选择题
1、使用Dim a(3, -3 to 0, 3 to 6)As String语句定义的数组元素有多少个: ( )
A、12 B、64 C、120 D、80
2、由系统自动触发的第一个事件是:( )
A、Click B、Dblclick C、Initialize D、Load
3、Print Int(12345.6789*100+0.5)/100的输出结果是:( )
A、12345.67 B、12345.68 C、1234567 D、1234568
4、下面语句中,字符串的长度为:( )
s="Visual Basic!"
A、12 B、13 C、16 D、15
5、在窗体上绘制唯一的文本框Text1,然后编写如下事件过程:
Private Sub Form_Load()
Text1.Text = " "
Text1.SetFocus
For i = 1 To 5
Sum = Sum + i
Next i
Text1.Text = Sum
End Sub
上述程序的运行结果是: ( )
A、在文本框Text1中输出16 B、在文本框Text1中输出0
C、出错 D、在文本框Text1中输出不定值
6、哪个关键字声明的局部变量在过程结束后就消失:( )
A、Dim B、Public
C、Static D、Private
7、在Visual Basic中,系统的基本运行实体是:( )
A、属性 B、事件
C、对象 D、函数
8、用一段代码对一个对象被单击(或双击)作出响应,从而实现指定的操作,
称为:( )
A、可视化程序设计 B、事件驱动编程机制
C、过程化程序设计方法 D、非过程化程序设计语言
9、既定义了数组的大小,又没有清除其中原有元素的数组定义是:( )
A、Dim Ary() B、Redim Preserve Ary(15)
C、Public Ary(1 To 5) As String D、Static Ary()
10、下列属性的取值为字符串的是:( )
A、Caption B、Value
C、Width D、Height
写程序运行结果
(1)在窗体上绘制一个标签Label1和一个命令按钮Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim i, result
result = 0
For i = 10.5 To 2.5 Step -1.5
result = result + i
Next i
Label1.Caption = Str$(Int(result))
End Sub
执行程序,单击命令按钮,在Label1的标签框内将显示:
(2)在窗体上绘制一个命令按钮Command1,并编写如下事件过程:
Private Sub Command1_Click()
Dim a(-3 To 0)
For i = LBound(a, 1) To UBound(a, 1)
a(i) = i
Next i
Print a(LBound(a, 1)); a(UBound(a, 1))
End Sub
执行程序,单击命令按钮后输出的结果为:
(LBound函数和UBound函数分别测试数组下标的上界和下界值)
(3)Private Sub Command1_Click()
Dim s, n As Integer
s = 0
n = 1
Do Until n > 7
s = s + n
n = n + 1
Loop
Print s
End Sub
程序的执行结果是:
(4)假定有如下的Sub过程:
Sub addsub(x As Single, y As Single)
t = x
x = x + y
y = t - y
End Sub
在窗体上绘制一个命令按钮Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a As Single
Dim b As Single
a = 3
b = 2
addsub a, b
Print a; b
End Sub
程序运行后,单击命令按钮,输出结果为:
(三)编程题
1、在窗体上画一个命令按钮command1,然后编写事件过程,该过程的功能是用冒泡法将10个整数按升序排列,10个整数定义为:a = Array(12, 1, 0, 23, 5, 34, 19, 33, 14, 40)
2、编写程序,单击命令按钮command1后用InputBox函数让用户从键盘输入年份,判断该年是否为闰年。如果是则输出“是闰年”,否则输出“是普通年份”。
提示:闰年的条件是年号可以被4整除但不能被100整除,或者能被400整除。
四、重点习题参考答案(答案仅供参考)
(一) 单项选择题
1、B 2、C 3、B 4、B 5、C 6、A 7、C 8、B 9、B 10、A
(二) 写程序运行结果
1、 字符串40(或“40”)
2、 -3 0
3、 28
4、 5 1
(三) 编程题
1、Option Base 1
Private Sub Command1_Click()
Dim a
a = Array(12, 1, 0, 23, 5, 34, 19, 33, 14, 40)
For i = 1 To 9
For j = 1 To 10 - i
If a(j) >= a(j + 1) Then
t = a(j + 1)
a(j + 1) = a(j)
a(j) = t
End If
Next j
Next i
For i = 1 To 10
Print a(i)
Next i
End Sub
2、Private Sub Command1_Click()
Dim y As Integer
y = InputBox("请输入年号")
If (y Mod 4 = 0 And y Mod 100<> 0) or (y Mod 400 = 0) Then
Print "是闰年"
Else
Print "是普通年份"
End If
End Sub
考试指导使用说明:本考试指导只适用于201903学期6月期末考试使用,包括正考和重修内容。指导中的章节知识点涵盖考试所有内容,给出的习题为考试类型题,习题答案要点只作为参考,详见课程讲义或笔记。如果在复习中有疑难问题请到课程答疑区提问。最后祝大家考试顺利!
微信扫码添加好友
如二维码无法识别,可拨打 13662661040 咨询。