当前位置:
文档之家› VB程序设计基础 第4章 程序的基本结构
VB程序设计基础 第4章 程序的基本结构
1.当左右均为数值类型时,右边表达式的精度与左 边变量精度不同时,强制转换成左边变量的精度。 2.当右边表达式是数字字符串,左边变量是数值类 型时,自动转换成数值类型再进行赋值。但如果表达 式中有非数字字符或空字符串时,就会出错。
3.当逻辑表达式复制给数值类型时,true转换为-1, false转换为0; 反之,当数值类型转换为逻辑类型时,非0转换为 true,0转换为false。 4.任何非字符类型赋值给字符类型时,均自动转换 为字符类型。
命令按钮
图标
VbDefaultButton1
默认按钮 VbDefaultButton2 VbDefaultButton3 VbDefaultButton4 强制返回 VbApplicationModel VSystemModel
0
256 512 768 0 4096
第一个按钮是默认值
第二个按钮是默认值 第三个按钮是默认值 第四个按钮是默认值 程序强制返回,直到用户作出响应。 系统强制返回,直到用户作出响应。
(二) 语句执行的说明
1、 “测试表达式”——可以是数值型或字符串表 达 式。 程序运行时会判断哪个“表达式”与“测试表 达式”相符,若相符则执行“表达式”后面的语句 块。可见:这种程序结构与前面的带ElseIf子句的If语 句类似(多分支结构)。
多分支结构流程图
表达式1
True False
表达式2
语句块n
3.注意: (1)无论有多少个分支,程序执行一个分支以 后,其余的分支便不再执行 (2)关键字ElseIf不能写成Else If
(3)当多分支中有多个表达式同时满足判断条 件时,则只执行第一个与之匹配的语句。
例4.8 根据输入的百分制成绩Score,转换成优、良、 中、及格、不及格5个等级,并在窗体上显示出来。 等级划分标准如下: 优 Score>=90 良 80<=Score<90 等级 = 中 70<=Score<80 及格 60<=Score<70 不及格 Score<60
(一)IF……then语句(单分支) 语句格式: 1、If <表达式> Then <语句体> 2、或:If <表达式> Then
语句块 End If
•表达式:一般为关系表达式、逻辑表达式,也可以 是算术表达式。表达式的值不为零则视为True,为 零则视为False。 语句块:一个或多个语句。若用1的简单形式,则语 句块只能是单个语句。 功能:判断条件,为真则执行语句体;否则执行后 面的语句。
显示按钮、图标
―确定”,按钮 ―确定”,“取消” 按钮 ―终止”,“重试”,“忽略”按钮 ―是”,“否”,“取消”按钮 ―是”,“否”按钮 ―重试”,“取消”按钮 Critical Message图标 Warning Query图标 Warning Message图标 Informaation Message图标
(二) 应用InputBOX函数的几个问题 1.有些参数可以省略,但是参数出现的位置和顺 序是固定的,用来分隔参数的逗号不能省略。 2.该函数返回的是字符串,若输入数值并参与计 算,需用Val( )函数将其转换为数值型。
3.Inputbox一旦被调用,用户必须响应,否则程 序一直处于等待状态,无法继续执行。 4.一个InputBOX对话框只能输入一个值,通常可 结合循环语句进行赋值。 5.对话框上的“确定”按钮用于确认;“取消”按 钮可使输入内容作废,返回一个空字符串。
类别
符号常量
VbOKOnly VbOKCancel VbAbortRetrylgnore VbYesNoCancel VbYesNo VbRetryCancel VbCritical VbQuestion VbExclamation Vbinformaation
值
0 1 2 3 4 5 16 32 48 64
(二)使用赋值语句时的注意事项: 1.“=‖的左边只能是变量名,不允许出现常量 和表达式。 Exp(2)=e^2 36=6^2 100=10*10
2.不允许在同一个赋值语句中为多个变量复 制(c语言允许) x1=x2=0 编译器将会把第一个=当成赋值符 号,而把第二个=当成比较运算符,把x2=0当作了 逻辑表达式。
(四)If语句的嵌套:
注意: 1、EndIf 总是与最接近的If配对。 2、为增强程序的可读性,书写代码时最好采用 锯齿形。
例 4.9 从键盘上输入三个整数,分别赋值给 变量x1,x2,x3比较它们的大小并重新排列,使得 x1>x2>x3。
二、情况语句(Select Case) ( 多分支结构)
将数值表达式按“格式控制符”制定的格式输出 例子: a=123456789 b=12/24 Print format (a,‖0000000000‖) ‗前面补0 Print format (a,‖###,###,###.00‖) ‗分节与小数点 Print format (b,‖%‖) ‗输出百分数 Print format (a,‖-#########‖) ‗输出负数 Print format (2345,‖####E+5‖) ‗输出浮点数
2、判断表达式中如果出现“=‖,则视为关系运算符, 不视为赋值运算。
(二)if……then ……else 语句( 双分支) 1、语句格式:
If
条件 Then 语句块1 Else 语句块2 End If
语句1 Else 语句2
或
If 条件 Then 2、功能:
判断条件,若条件为真,执行语句块1;条件为 假,执行语句块2。即在两个语句块中选择一个。
语句格式的流程图见下图:
前一语句
条件
True False
语句
后续语句
例4.1 根据用户在消息框中单击的命令按钮, 决定是否结束程序的运行:
例4.2:在窗体上设置三个命令按钮,当点击其 中一个时,另两个即失效。
注意:
1、简单if语句关键字then之后只能在同一行上有语 句。所以不用加End If。否则换行之后的语句将被视 为在选择结构之后的语句。
VbCancel VbAbort VbRetry VbIgnore VbYes VbNo
例子:用InputBox函数输入一个正整数,若输入正 确,计算其平方根。
模态窗口——运行时,模态窗口挂起应用程序的 其他窗口操作,直到获得应答。
(三)MsgBox语句
1.格式:
MsgBox <prompt>
2.作用:只是向用户报告一个简短的信息, 没有返回值。
四、格式输出函数Format与Print方法
Format通常与Print方法配合使用
格式:Format (表达式[,格式控制符]) 说明: 表达式——要格式化输出的数值、日期或字符串类型 表达式 格式控制符——用来指定输出个实的字符串,格式字 符串必须用双引号括起来。
功能:按一定格式输出
(一)数值格式化
例子:计算两个输入数据的和、差、积
Dim a As String Dim b As String Private Sub Form_Click() a = InputBox ("输入A的值") b = InputBox ("输入B的值") x = Val(a) y = Val(b) Print Print Print "两数之和="; x + y Print "两数之差="; x - y Print "两数之积="; x * y End Sub
If
2.语句功能 如果第k个条件表达式 (k=1,2,3… …)成立, 则执行语句块k(k=1,2,3… …), 否则执行语句块n。 其判断顺序为表达式1、表达式二……
多分支结构流程图
表达式1
True False
表达式2
True
False False
表达式n-1
True语句块1语 Nhomakorabea块2语句块n-1
三、消息框MsgBox函数和MsgBox语句 MsgBox函数用于生成一个对话框,提示用户进 行选择操作。 (一)函数的格式 MsgBox (prompt[,buttons][,title][,helpfile,context]) 其中: prompt—对话框提示信息。 Title—显示对话框标题。 helpfile,context—帮助文件的名字,帮助目录号。 buttons—是一个整数或符号常量,用于控制对话框显 示的按钮,图标的种类和数量。它是由四类数值相加 产生。 注意:有些参数可以省略,但是参数出现的位置和 顺序是固定的,用来分隔参数的逗号不能省略。
一、赋值语句
赋值语句由变量名、赋值运算符(=)和 某种类型的表达式组成。赋值语句的一般格式为: 变量=表达式 赋值语句有两个基本功能:对表达式进行计算 和保存表达式的值。 赋值语句被执行时:它先对赋值运算符右边的 表达式进行计算,然后将结果存储在运算符左边 的变量中。
若事先定义了变量的类型,变量的类型和表达式 计算结果的值必须相匹配。 (一)赋值号两边类型不一致时的处理规则:
(二)函数的用途 在应用程序中,MsgBox的返回值一般用来作为继 续执行程序的依据,根据返回值决定后面的操作。 MsgBox函数的返回值
返回值 1 操作 选“确定”按钮 符号常量 VbOk
2 3 4 5 6 7
选“取消”按钮 选“终止”按钮 选“重试”按钮 选“忽略”按钮 选“是”按钮 选“否”按钮
第四章 程序的基本结构
Visual Basic程序包括三种基本结构: 顺序结构、 选择和分支结构、 循环结构。
退出
§ 4.1 顺序结构
顺序结构就是指:各个语句按出现的先后顺序依次 执行。
…
开始语句 语句1 语句2
……