内容正文:
内蒙古自治区(计算机类)对口招生
《Visual Basic程序设计》复习讲义
模块 3 顺序结构程序设计
考点 8 顺序结构程序设计
【考纲要求】
1. 掌握数据输出;
2. 掌握常用基本语句;
3. 掌握利用文本框进行数据输入;
4. 掌握使用对话框实现数据的输入和输出。
【知识网络】
【知识和技能要点】
一、数据输出
1. Print 方法
Print 方法用来在窗体上显示字符串和表达式的值,也可以在其他图形对象或打印机上输出数据。使用时在 Print 关键字之后给出表达式列表,若要在别的对象上输出,则在 Print 之前冠以对象名和一个点号;省略对象名时输出到当前窗体。它有计算与输出的双重功能,遇到表达式时先计算再输出。每执行一次 Print 会自动换行,若想在同一行上继续输出,可以在末尾加上逗号或分号。
2. Tab 函数与 Spc 函数
在 Print 方法中可以使用 Tab 与 Spc 两个函数来控制输出位置。Tab(n) 把光标定位在绝对列号 n 上,n 是一个数值表达式,其取值为整数;Spc(n) 用于插入 n 个空格。使用这两个函数时,各个输出项之间要用分号隔开,例如把"姓名"与"成绩"分别定位到第 5 列和第 20 列。
3. Format 函数
Format 函数按格式字符串指定的形式输出数值表达式的值,格式为 Format(数值表达式, 格式字符串)。常用的格式说明字符有:# 表示数字且不在前后补 0;0 表示数字并把多余的数字位用 0 补齐;点号表示小数点;逗号表示千位分隔;% 表示百分号;正负号表示在数值前添加 + 或 -;E+ 与 E- 表示用指数形式显示。例如对 25.6 套用 "000.00",结果为 025.60。
二、常用基本语句
1. 赋值语句
赋值语句把表达式的值赋给变量或对象的属性,其格式由可选的关键字 Let、变量或属性名、等号和表达式依次组成,关键字 Let 通常省略不写。使用时要注意数据类型的匹配:当表达式的类型与变量的类型不一致时,会强制转换成左侧的类型,例如把 10/3 赋给整型变量,结果只保留整数部分。变体型变量不存在类型匹配的问题。
2. 卸载对象语句
卸载对象语句的格式为"[Unload 对象名]",作用是把窗体或控件从内存中卸载,释放它所占用的内存空间。当对象名指的是当前窗体或当前控件时,可以用关键字 Me 来代替,例如在窗体的代码中写 Unload Me,就表示卸载这个窗体本身。
3. 注释语句
注释就是在程序中加入的一些说明性文字,常用来提供编写程序的日期、编写人,或者解释某段代码的作用,其目的在于为程序的阅读与修改提供信息,从而提高程序的可读性和可维护性。写注释有两种办法:一是使用关键字 Rem,这时 Rem 与注释内容之间要留一个空格;二是使用单引号。
4. 暂停语句与结束语句
暂停语句使用关键字 Stop,执行到它时程序会暂时停下来,此后还可以继续运行。结束语句使用关键字 End,作用是结束一段程序的运行,它可以放在任何事件过程中,执行到它时程序立即终止并退出。两者容易混淆:前者只是暂停,后者则把程序结束掉。
三、利用文本框进行数据输入
1. 文本框输入数据与类型转换
在文本框中输入的内容都保存在它的 Text 属性里,而且一律按字符串处理,即使输入的是一串数字也不例外。因此要把输入的数据用于计算,必须先用 Val 函数把字符串转换成数值,例如写成 a = Val(Text1.Text)。反过来,若要把计算结果显示到文本框中,应先用 Str 函数把数值转换成字符串,再赋给 Text 属性。
四、使用对话框实现数据的输入和输出
1. 输入框 InputBox
InputBox 函数用来打开一个输入框,等待用户输入内容或选择一个按钮。使用时先用等号把函数的返回值赋给一个变量,括号中依次写提示、标题与默认值:提示是显示在输入框中的说明文字,标题显示在标题栏上,默认值是文本框中预先填好的内容,后两项都可以省略。无论用户输入的是数字还是文字,返回值都是字符串型;若单击"取消"按钮,返回值是空串。
2. 消息框 MsgBox
MsgBox 函数用于显示一条消息,并等待用户作出判断,其格式是先用等号把返回值赋给变量,括号中依次给出提示、按钮与标题。按钮参数设置按钮的数目、类型与图标,常用的符号常量有 vbOKOnly、vbOKCancel、vbYesNo、vbYesNoCancel 等;用户单击不同按钮时返回值也不同,vbOK 为 1、vbCancel 为 2、vbYes 为 6、vbNo 为 7。按钮与标题都可以省略。
【真题】
2023年真题|第14题 要在窗体上使用 print 方法输出的内容不因最小化被擦除掉,需设置窗体的哪个属性为 true( )
A. Picture
B. Text
C. Icon
D. AutoRedraw
【答案】D
【解析】AutoRedraw 属性设为 True 后,窗体上用 Print 方法输出的内容会被系统保存下来,窗体被最小化再恢复时能够自动重绘,不会被擦除掉。Picture 用于设置窗体背景图片,Icon 用于设置窗体图标,Text 通常不用于窗体。
2023年真题|第19题 下列对 MsgBox 函数使用正确的是( )
A. x = MsgBox("输入的数据超出范围", vbOKOnly, "注意")
B. x = MsgBox(输入的数据超出范围, vbOKOnly, 注意)
C. x = MsgBox("输入的数据超出范围", OK, "注意")
D. x = MsgBox(1)
【答案】A
【解析】MsgBox 函数的提示信息与标题都是字符串表达式,必须加上双引号;按钮参数要使用系统定义的符号常量,如 vbOKOnly。A 项三项俱全且写法规范;B 项两处字符串都没加引号;C 项按钮常量写成 OK,缺少 vb 前缀;D 项只给了一个数值参数,参数不完整。
2024年真题|第4题 函数 InputBox 返回值的数据类型是( )
A. 整型
B. 字符型
C. 逻辑型
D. 变体型
【答案】B
【解析】InputBox 函数把用户在文本框中输入的内容一律作为字符串返回,因此返回值的数据类型是字符型。若输入的是数字并要参与计算,必须先用 Val 函数把它转换成数值。
2025年真题|第17题 在弹出的对话框中单击"取消"按钮后,MsgBox 函数的返回值是( )
A. 0
B. 1
C. 2
D. 3
【答案】C
【解析】MsgBox 函数的返回值与用户所单击的按钮一一对应:单击"确定"返回 vbOK,其值为 1;单击"取消"返回 vbCancel,其值为 2;单击"中止"返回 vbAbort,其值为 3。因此单击"取消"返回的是 2。
2022年真题|程序填空题第130题 窗体上有一个命令按钮,单击命令按钮后运行密码验证程序,弹出输入框。当用户输入 abcd 时提示"输入正确";输入错误时提示"输入错误,是否重新输入";3 次输入错误时显示警告信息并退出程序。程序代码如下,请补充完善程序。
Private Sub Command1_Click()
Dim i, j As Integer
Dim mm As String
mm = [14]________("请输入密码", , , 2000, 2000)
j = 1
Do While j <= [15]________
If UCase(mm) [16]________ "ABCD" Then
i = [17]________("输入错误,是否重新输入?", vbYesNoCancel)
If i <> 6 Then
End
Else
mm = [18]________("请输入密码", , , 2000, 2000)
j = j + 1
End If
Else
[19]________("输入正确")
End
End If
Loop
[20]________("非法操作者!!", 48)
End Sub
【答案】[14] InputBox;[15] 3;[16] <>;[17] MsgBox;[18] InputBox;[19] MsgBox;[20] MsgBox
【解析】要弹出输入框让用户输入密码,应使用 InputBox 函数,故 [14] 处填 InputBox。题目要求输入 3 次错误后退出,循环最多执行 3 次,故 [15] 处填 3。把输入的密码转换为大写后与 "ABCD" 比较,不等时才算错误,故 [16] 处填不等号 <>。提示用户"输入错误,是否重新输入"要弹出消息框并取得用户的选择,应使用 MsgBox 函数,故 [17] 处填 MsgBox;用户选择重新输入时再次弹出输入框,故 [18] 处填 InputBox;输入正确时用消息框给出提示,故 [19] 处填 MsgBox;3 次都错误后用消息框显示警告信息,故 [20] 处也填 MsgBox。
【练习题】
一、填空题
1. 使用________函数可以打开输入框输入数据;若单击输入框中的"取消"按钮,该函数的返回值为________。
【答案】InputBox;空串
【解析】InputBox 函数用来打开一个输入框,等待用户输入内容。无论用户输入的是数字还是文字,返回值都是字符串型;若单击"取消"按钮,返回的是一个空串,因此用输入框取得数据后通常还要用 Val 函数转换。
2. Print 方法具有计算和输出的双重功能,对于表达式,它应先________后________。
【答案】计算;输出
【解析】Print 方法遇到表达式时并不是直接把式子原样打印出来,而是先把表达式的值算出来,再把结果输出到窗体上。例如写成 Print 56+28,窗体上显示的是 84 而不是 56+28。
3. 在使用 Print 方法时,若用逗号分隔各输出项,则按________格式输出;若用分号分隔,则按________格式输出。
【答案】标准;紧凑
【解析】Print 方法中用逗号分隔各输出项时,各项按标准格式输出,即以若干个字符宽的固定分区依次排列;用分号分隔时,各项按紧凑格式输出,彼此紧挨着排列,中间不留多余空格。
4. 要把光标定位在指定的绝对列号上,可以使用________函数。
【答案】Tab
【解析】Tab 函数用于把光标定位到指定的绝对列号上,其参数是一个整数值,表示列号。它只能用在 Print 方法中,使用时各输出项之间要用分号隔开,例如 Print Tab(5); "姓名"。
5. 注释语句可以使用关键字 Rem,也可以用________开头。
【答案】单引号
【解析】在程序中写注释有两种办法:一是使用关键字 Rem,此时 Rem 与注释内容之间要留一个空格,若写在语句行之后还要用冒号与语句隔开;二是使用单引号,单引号之后的内容全部作为注释,不必再加冒号。
6. 从内存中卸载窗体或控件使用________语句;若要卸载当前窗体,对象名可以用________表示。
【答案】Unload;Me
【解析】卸载对象语句的格式为 Unload 加上对象名,作用是把窗体或控件从内存中卸载,释放它占用的内存空间。当对象名指当前窗体或当前控件时,可以直接用关键字 Me 代替,例如在窗体的代码中写 Unload Me。
二、单项选择题
1. 赋值语句的一般格式中,关键字 Let( )
A. 必须写出
B. 可以省略
C. 只能用于字符串
D. 要与变量名连写
【答案】B
【解析】赋值语句的格式中,关键字 Let 是可选项,在 Visual Basic 程序里通常省略不写,直接写"变量或属性名 = 表达式"即可。它并不是只能用于字符串,也不能与变量名连写。
2. 在 Visual Basic 中,注释语句可以使用( )
A. 单引号
B. 双引号
C. 冒号
D. 分号
【答案】A
【解析】写注释可以使用关键字 Rem,也可以使用单引号,单引号之后的内容全部作为注释而不被执行。双引号用于界定字符串常量,冒号用于在同一行分隔多条语句,分号用于控制 Print 方法的输出格式。
3. 下列语句中,用于把窗体从内存中卸载的是( )
A. End
B. Stop
C. Unload
D. Cls
【答案】C
【解析】Unload 是卸载对象语句的关键字,作用是把窗体或控件从内存中卸载。End 用于结束一段程序的运行,Stop 用于暂停程序的执行,Cls 是清除窗体上输出内容的方法,三者都不能把窗体从内存中卸载。
4. Print 方法格式中的 [对象名.] 部分省略时表示( )
A. 打印机
B. 图片框
C. 立即窗口
D. 当前窗体
【答案】D
【解析】Print 方法的格式为"[对象名.]Print [表达式列表]",对象名用方括号括起表示可以省略,省略时输出到当前窗体上。若要输出到图片框或打印机,则必须写明相应对象的名称。
5. 若希望 Print 方法输出的内容在一次输出后不换行,应在末尾添加( )
A. 逗号或分号
B. 句号
C. 冒号
D. 叹号
【答案】A
【解析】Print 方法每执行一次会自动换行,若希望后续内容接着在同一行输出,可以在表达式列表的末尾加上一个逗号或分号。加逗号时下一项按标准格式接着输出,加分号时则按紧凑格式接着输出。
6. Format 函数的作用是( )
A. 求字符串的长度
B. 按指定的格式输出数值
C. 产生随机数
D. 转换字母的大小写
【答案】B
【解析】Format 函数按格式字符串指定的形式输出数值表达式的值,例如 Format(25.6, "000.00") 返回 025.60。求字符串长度用 Len,产生随机数用 Rnd,转换字母大小写用 UCase 与 LCase。
7. 单击 InputBox 输入框中的"取消"按钮后,函数返回( )
A. 0
B. 1
C. 空串
D. 上一次输入的值
【答案】C
【解析】InputBox 函数的返回值是字符串型。当用户单击"取消"按钮时,函数返回的是一个空串,即长度为零的字符串,程序中常据此判断用户是否取消了输入。
8. MsgBox 函数中用于设置按钮数目和类型的参数是( )
A. 第一个参数
B. 第三个参数
C. 没有此参数
D. 第二个参数
【答案】D
【解析】MsgBox 函数的括号中依次给出提示、按钮与标题三个参数,其中第一个参数是提示信息,第二个参数用于设置按钮的数目、类型与图标,第三个参数用于设置消息框的标题。
9. 若要显示一个只含"确定"按钮的消息框,应使用的符号常量是( )
A. vbOKCancel
B. vbYesNo
C. vbOKOnly
D. vbRetryCancel
【答案】C
【解析】vbOKOnly 表示消息框中只显示一个"确定"按钮;vbOKCancel 显示"确定"与"取消"两个按钮,vbYesNo 显示"是"与"否",vbRetryCancel 显示"重试"与"取消"。
10. MsgBox 函数中,单击"是"按钮时的返回值是( )
A. 1
B. 2
C. 7
D. 6
【答案】D
【解析】MsgBox 函数的返回值与用户所单击的按钮一一对应:vbOK 为 1,vbCancel 为 2,vbYes 为 6,vbNo 为 7。因此单击"是"按钮时返回的是 6。
11. Tab(n) 函数的功能是( )
A. 把光标定位到绝对列号 n 上
B. 跳过 n 个空格
C. 输出 n 个字符
D. 换行 n 次
【答案】A
【解析】Tab 函数把光标定位到指定的绝对列号 n 上,其参数为整数,表示列号。跳过 n 个空格的函数是 Spc,它与 Tab 的作用不同;两者都只能用在 Print 方法中。
12. 在文本框 Text1 中输入数据后,要把它转换为数值参与计算,通常应使用( )
A. Str
B. Val
C. Len
D. Chr
【答案】B
【解析】文本框中输入的内容一律按字符串处理,要参与数值计算必须先用 Val 函数把它转换成数值,例如写成 a = Val(Text1.Text)。Str 的作用正好相反,是把数值转换成字符串。
三、程序填空题
1. 下列程序用输入框分别输入两个数,再在消息框中显示它们的和。请补充完整下列程序代码。
Private Sub Command1_Click()
Dim a As Single, b As Single
a = Val([1]________("请输入第一个数"))
b = Val([2]________("请输入第二个数"))
[3]________ "两数之和为:" & (a + b), vbOKOnly, "结果"
End Sub
【答案】[1] InputBox;[2] InputBox;[3] MsgBox
【解析】取得用户输入的数据要用 InputBox 函数,其返回值是字符串型,因此再用 Val 函数转换成数值后赋给变量,故 [1]、[2] 两处都填 InputBox。要把计算结果显示给用户,应使用 MsgBox 函数,括号中依次给出提示信息、按钮常量与标题,故 [3] 处填 MsgBox。
2. 下列程序用 Print 方法输出一行内容,并用 Tab 函数把各输出项定位到指定的列上。请补充完整下列程序代码。
Private Sub Form_Click()
Print [1]________(5); "姓名"; [2]________(20); "成绩"
End Sub
【答案】[1] Tab;[2] Tab
【解析】要把输出项定位到指定的绝对列号上,应使用 Tab 函数,其参数为列号,故 [1]、[2] 两处都填 Tab。使用 Tab 函数时各输出项之间要用分号隔开,这样"姓名"落在第 5 列、"成绩"落在第 20 列。
原创精品资源学科网独家享有版权,侵权必究
学科网(北京)股份有限公司
$