四章控制结构.ppt
《四章控制结构.ppt》由会员分享,可在线阅读,更多相关《四章控制结构.ppt(44页珍藏版)》请在三一文库上搜索。
1、第四章 控制结构,4.1顺序控制结构,顺序结构就是各语句按出现的先后次序执行。一般的程序设计语言中,顺序结构的语句主要是赋值语句、输入/输出语句等。在VB中也有赋值语句,而输入/输出可以通过文本框、print方法等实现,也可以通过系统提供的函数和过程来实现。 4.1.1赋值语句 赋值语句的一般形式如下: 变量名=表达式 对象.属性=表达式 程序执行时,先计算右边表达式的值,然后将值赋给左边的变量或属性。 例如: X=100 把数值赋给变量X; Text1.Text=“ VB欢迎你“ 把字符串赋给Text1的Text属性 Label1.Caption = Date() 把Date函数的结果赋给L
2、abel1的Caption属性 Label1.Top = Label1.Top - 100 把表达式的值赋给Label1的Top属性 在赋值语句中,赋值运算符“=”代表赋值操作,而不代表等量关系。 注意:当表达式的类型与变量的类型不一致时,强制转换成左边的精度,变量名=表达式,表达式可以是任何类型的表达式,一般与左边的变量类型一致 例如:Dim i as Integer i=32 如果右边表达式类型与左边变量类型不同,则: 1)表达式均为数值型,但精度不同时,表达式结果自动转换成左边的精度在赋值给变量。如:i%=3.56 i=4,2)变量为数值型,表达式为字符串时,若表达式为数字型字符串,则自
3、动转换为数值型在赋值给变量。 x%=“123” x=123 x%=“abc” 出错 x!=“” 出错 3)变量为数值型,表达式为逻辑型时,true转换成1,false转换成0后赋值给变量 x%=true x-1,4)变量为逻辑型,表达式为数值型时,非0转换成true,0转换成false后赋值给变量 Dim Boolean b b=21 btrue 5)变量为字符型,表达式为非字符型时,表达式的结果自动转换为字符型后赋值给变量 Dim s as String s=123 s”123”,使用赋值语句时应注意:,以下的赋值语句均是错误的: 5=x+y 常量在左边 x+y=5 表达式在左边 Sin(x
4、)=x+y 不能在一句赋值语句中为多个变量赋值:,正确 x=1 y=1 z=1,错误:x=y=z=1,4.1.2人机交互函数和过程 Vb程序与用户之间的直接交互可以通过InputBox ( )函数、MsgBox ( )函数和Msg过程进行。 1.InputBox()函数 InputBox()函数可以产生一个对话框,这个对话框作为输入数据的界面,等待用户输入数据,当用户单击“确定“按钮或回车时,函数返回输入的值,类型为字符型。函数格式如下: 变量$InputBox(Prompt,Title,Default,XPos,YPose),例4-1 应用InputBox函数进行患者信息的输入,运行界面如图
5、,程序代码如下: Private Sub Form_Click() Dim cl$, msg1$, msg2$, msg3$, msg$, I$ cl = Chr(13) + Chr(10) 回车、换行 msg1 = “请输入患者姓名“ msg2 = “输入后单击确定按钮“ msg3 = “或按回车键“ msg = msg1 + cl + msg2 + cl + msg3 I = InputBox (msg, “患者信息输入框“, “张三“, 400, 400) End Sub,注意 各项参数次序必须一一对应,Prompt项不可省略, 其他项可以省略,但处于中间的默认参数要用逗号占位符跳过 该
6、函数返回的值为字符型,如果需要输入数值并参加运算时,在运算前运用Val(c)函数将其类型转换为数值类型,例:inputBox.vbp,2.MsgBox()函数和MsgBox过程 MsgBox()函数可以产生一个消息框,等待用户选择按钮,当用户单击某个按钮时,函数返回按钮的值,类型为整型。函数格式如下: 变量MsgBox (Prompt,Type ,Title) Promp:字符串表达式,用于提示信息 Type:消息框类型 Title:字符串表达式,在标题栏中显示,4.1.2人机交互函数和过程,其中Type为整型表达式,用来控制在消息框中显示的按钮、图标的种类、数量。其按钮、图表设置值及意义 如
7、下表所示:,变量MsgBox (Prompt,Type ,Title),例如:要显示“重试”、“取消按钮”、关键信息图标 红色stop图标,第一个按钮为默认、系统模式,type值为5+16+0+4096,或 VBRetryCancel+VBCritical+VBDefualtButton+VBSystomModel,t = vbRetryCancel + vbCritical + VBDefualtButton + VBSystomModel ret = MsgBox(“消息框示例“, t, “消息框“),例 msgBox.vbp,MsgBox函数返回所选按钮整数值的意义如下表所示:,若只需给
8、出prompt参数,可以这样使用 Ret=msgBox “prompt”,4.2选择结构,4.2.1 IF条件语句 1.IFThen 语句(单分支结构) 语句形式:,(1) IF Then 语句块 End IF,(2) IF Then 语句块,单分支结构流程示意图,其中:表达式一般为关系表达式、逻辑表达式,也可以为算术表达式。表达式的值按非零为True ,零为False 进行处理。 语句块:可以是一条或多条语句。如果采用形式(2)表示则语句之间要用冒号分隔,并且一定写在同一行上。 If 和end if 要成对出现,例4-3已知两个变量x和y,比较它们的大小,使x中的值大于y。(要实现两个变量中
9、的数互相交换通常以使用第三变量为过渡,在此为t)语句如下:,IF x y Then t=x 将变量x中的值暂时存放于变量t中 x=y 用变量y中的值替代变量x中的值 y=t 再将原变量x中的值替代变量y中的值 End IF,或者 IF x y Then t=x : x=y: y=t,2.IFThenElse(双分支结构) 语句形式: IF Then Else End IF 或者: IF Then Else ,如果表达式的值为非零或True执行语句块1,否则执行语句块2。,例4-2 编写一医生工作站的登录检验程序,运行界面如图43。对登录名(医生工号)和密码的规定如下: (1)医生工号不超过6位
10、数字,密码为6位字符,密码输入时显示为“*”。本题假设密码为“cljuan”。 (2)当医生工号输入非数字字符,密码不正确时,显示相关信息。 (3)若单击“重试”按钮,则清除原来输入的内容,焦点定位在原输入文本框,等待用户输入。若单击取消按钮,程序停止运行。,本程序运行结果如图所示,程序代码见后页。,例4-2 程序代码如下:,Private Sub Command1_Click() Dim I As Integer IF Not Text2 = “cljuan“ Then I= MsgBox(“密码错误“, 5 +64+ 0 + VBSystemModel, “登录密码“) IF I = 2
11、Then End Else Text2 = “ 用户单击“取消”按钮返回按钮值 text2=“” 用户单击”重试”按钮文本框置空,等待用户重新输入 Text2.SetFocus 将焦点设置在文本框2上,方便用户输入 End IF End Sub Private Sub Text1_LostFocus() 焦点离开文本框1时触发LostFocus事件 IF Not IsNumeric(Text1) Then 利用IsNumeric()函数判断文本框中输入的是否为数字字符 MsgBox “医生工号必须是数字字符“ Text1 = “ Text1.SetFocus End IF End Sub,3.
12、IFThenElseIF(多分支结构) 语句形式: IF Then ElseIF Then Else End IF,不管有几个分支,依次判断,当某条件满足,执行相应的语句,其余分支不再执行;若条件都不满足,且有Else子句,则执行该语句块,否则什么也不执行。. ElseIf不能写成 Else If。,Private Sub Command1_Click() Dim x, y Picture1.Cls x = Val(Text1.Text) 将文本转换为数值型后赋值给变量x,y y = Val(Text2.Text) IF x 90 And y 60 Then Picture1.Print “血
13、压偏低“ ElseIF x = 140 And y = 90 Then Picture1.Print “血压正常“ ElseIF x 160 And y 95 Then Picture1.Print “临界高血压“ Else Picture1.Print “高血压“ End IF End Sub Private Sub Command2_Click() End End Sub,例4-5 按照世界卫生组织(WHo)建议使用的血压标准是:凡正常成人收缩压应小于或等于140MmHg,舒张压小于或等于90MmHg。如果成人收缩压大于或等于160MmHg,舒张压大于或等于95MmHg为高血压;血压值在上
14、述两者之间,亦即收缩压在141159MmHg之间,舒张压在91-94MmHg之间,为临界高血压。低血压通常指血压低于90/60MmHg。运行界面与程序代码如下:,例 已知百分制成绩mark,显示对应的五级制成绩 哪些正确,哪些错误?,返回72,4.2.2 Select Case 语句 Select Case 语句是多分支结构的又一种表示形式,又称情况语句。 语句形式: Select Case 变量或表达式 Case 表达式列表1 Case 表达式列表2 Case Else End Select,. .,Private Sub Command1_Click() Dim code As Strin
15、g code = Trim(Text2.Text) Select Case code Case “+“ Text4 .Text= Val(Text1) + Val(Text3) Case “-“ Text4.Text = Val(Text1) - Val(Text3) Case “*“ Text4.Text = Val(Text1) * Val(Text3 Case “/“ IF Val(Text3) = 0 Then MsgBox (“除数不能为0,请重新输入“) Text3 = “ Text4.Text = “ Text3.SetFocus Else Text4 = Val(Text1)
16、/ Val(Text3 End IF End Select End Sub,Private Sub Command2_Click() End End Sub Private Sub Command3_Click() Text1 = “ Text2 = “ Text3 = “ Text4 = “ Text1.SetFocus End Sub,例4-7编写一个简便四则运算器,应用Select Case 判断运算符。运行界面如图 【程序代码】,:与同类型的下面四种形式之一: 表达式 例: case “A“ 一组枚举表达式(用逗号分隔) case 2,4,6,8 表达式1 To 表达式2 case 6
17、0 To 100 Is 关系运算符表达式 case Is 60,5.IF 语句的嵌套 语句形式: IF Then 语句块 IF Then 语句块 End IF 语句块 End IF,例4-6 输入3个整数,按从小到大的顺序输出。程序运行界面如图 程序代码如下: Private Sub Command1_Click() Dim x%, y%, z%, t% Form1.Cls x = Val(InputBox(“请输入1个整数“) y = Val(InputBox(“请输入1个整数“) z = Val(InputBox(“请输入1个整数“) Print “您输入三个的数是:“; x; Spc(1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制 结构
链接地址:https://www.31doc.com/p-3194650.html