第05章选择结构.ppt_第1页
第05章选择结构.ppt_第2页
第05章选择结构.ppt_第3页
第05章选择结构.ppt_第4页
第05章选择结构.ppt_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章 选择结构,1.掌握If 条件语句 2. Select Case选择语句 3.选择嵌套结构,本章重点: 学习掌握If条件语句和Select Case语句的格式及其使用。,本章难点: 选择嵌套结构,本章内容及要求:,选择结构,选择结构:当设定条件成立时执行某些语句,条件不成立时则跳过这些语句或执行其它的语句。 选择结构中要使用选择语句,在VB中提供了两种语句: If语句和Select Case语句,1、If单分支结构,格式1: If Then 其中,是一个条件表达式或逻辑表达式 格式2: If Then End If,1、If单分支结构,说明: 表达式都是逻辑表达式,数值表达式和关系表达式

2、被视为逻辑表达式的特例。当表达式为数值表达式时,VB 将这个值解释为 True 或 False:一个为零的数值为 False,而任何非零数值都被看作 True。 语句块可以是一条或多条语句。如果使用格式1的简单形式表示,则只能是一条语句;或用冒号隔开的多条语句,但这些语句必须书写在一行上。 可以使用单行或多行语法有条件地执行一个语句。下面两个例子是等价的: If anyDate Now Then anyDate = Now 和 If anyDate Now Then anyDate = Now End If If.Then 的单行格式不用 End If 语句。,1、If单分支结构,例如,If

3、Data=90 Then Print “优秀” 例题:输入一个数,如果是3的 倍数则通过消息框输出。 Private Sub Form_Click() Dim Data As Integer Data = InputBox(请输入一个值:) If Data Mod 3 = 0 Then MsgBox Data End Sub,Data是3的倍数,Data=90?,输出“优秀”,T,F,格式1: If Then Else End If 格式2: If Then Else ,2、If双分支结构,功能:当表达式的值为非0(True)时,执行Then后面的语句块1,否则执行Else后面的语句块2。,2

4、、If双分支结构,例如,Dim Data As Integer Data = InputBox(“请输入成绩:) If Data = 90 Then Print “优秀” Else Print “合格” Print 计算完毕 上例的If 语句可以改写为: If Data = 90 Then Print “优秀” Else Print “合格” End If,条件函数: IIf函数形式是: IIf(表达式,当表达式为True时的值,当表达式为False时的值) iif函数等价于双分支结构语句。 例如,求x,y中大的数,放入Tmax变量中,语句如下: Tmax=IIf(x y,x,y) 等价于:I

5、f xy Then Tmax=x else Tmax=y,格式: If Then ElseIf Then Else 语句块 n+1 End If 说明:不管有几个分支,依次判断,当某条件满足,执行相应的语句块,其余分支不再执行;若条件都不满足,且有Else子句,则执行该 语句块,否则什么也不执行。. ElseIf不能写成 Else If。,3、If多分支结构,T,表达式1,表达式2,表达式n,语句块1,语句块2,语句块n,语句块n+1,T,T,F,F,F,说明: 不管有几个分支,程序执行了一个分支后,其余分支不再执行。 ElseIf子句的数量没有限制,可以根据需要使用任意多个ElseIf子句。

6、 语句中的ElseIf子句和Else子句都是可选项,如果省略这些子句,则成为单分支结构。 If.Then.ElseIf 只是 If.Then.Else 的一个特例。注意,可以使用任意数量的 ElseIf 子句,或者一个也不用。可以有一个 Else 子句,而不管有没有 ElseIf 子句。,例 已知百分制成绩mark,显示对应的五级制成绩, 哪些正确,哪些错误?,例题: Weight = InputBox(输入西瓜重量:, 计算西瓜款) If Weight 4 Then Price = 1 ElseIf Weight = 7 Then Price = 1.3 Else Price = 1.1 E

7、nd If Money = Price * Weight MsgBox “西瓜重” & Weight & “公斤,单价” & _ Price & 元,应收瓜款 & Money & _ 元, , 计算西瓜款,4公斤以下:1.00元/公斤 4至7公斤: 1.3元/公斤 超过7公斤: 1.1元/公斤 If Weight = 4 And Price 7 Then Price = 1.1,例题: Char = InputBox(输入一个字符, 测试字符值) If Char = 0 And Char = A And Char = a And Char = z Then MsgBox 输入的字符是小写字母

8、Else MsgBox 输入的字符是其它符号 End If,判断输入的是大写字母、小写字母、数字还是其它符号,Select Case选择语句,语法格式: Select Case Case Case Case Else End Select 功能:根据测试表达式的值,决定程序的流向。,Select Case选择语句,说明: (1) 值的类型是数值型、字符串型、日期型等,一旦与某个Case后的值相等,则执行这个Case中的,完成后执行End Select后的语句。 (2)如果所有的Case后的都不与项匹配,则执行Case Else后的。 (3)表达式表与测试变量或表达式的类型必须相同,每一个表达式

9、表是一个或几个值的列表。如果在一个列表中有多个值,就用逗号把值隔开。表达式表有四种形式: 一个表达式。如:Case 6 一组用逗号隔开的枚举值。如: Case 1,3,5,7 表达式1 TO 表达式2。如: Case 1 To 10 Is 。如:Case Is=80 另外,在一个情况语句中,上述四种形式可以混合使用,Select Case选择语句,说明: (4)Select Case语句在执行时,先求测试表达式的值,然后寻找该值与哪一个Case子句的表达式值相匹配,找到后则执行与该Case语句有关的语句块,之后自动转到EndSelect后的语句执行;如果没有找到与Case子句中的表达式相匹配的

10、值,则执行Case Else子句有关的语句块,然后转到End Select后面的语句执行。 (5)当有多个Case子句的取值范围和测试表达式的值域相符时,只执行符合要求的第一个Case子句后的语句块。 (6)Select Case语句只对单个表达式求值,并根据求值结果执行不同的语句块;而If Then Else语句可以对不同的表达式求值,然后执行不同的操作。这是两者的主要区别。,例题:按输入 学生成绩分等级。 Data = InputBox(请输入一个成绩, 成绩分等) Select Case Int(Data / 10) Case 10 MsgBox 满分, , 成绩分等 Case 9 Ms

11、gBox 优秀, , 成绩分等 Case 8 MsgBox 良好, , 成绩分等 Case 7 MsgBox 一般, , 成绩分等 Case 6 MsgBox 合格, , 成绩分等 Case Else MsgBox 不合格, , 成绩分等 End Select,例题: 测试输入的字符 Char = InputBox(请输入一个字符, 测试) Select Case Char Case 0 To 9 MsgBox 字符是数字, , 测试 Case a To z MsgBox 字符是小写字母, , 测试 Case A To Z MsgBox 字符是大写字母, , 测试 Case Else MsgBox 字符是其它符号, , 测试 End Select,上面学习了选择结构语句的基本形式,可以通过这些基本形式加以复合,获得更为复杂的选择结构,称为选择结构语句的嵌套。可根据实际情况选择采用何种结构。例如:,4、嵌套结构,例题:求一元二次方程ax2+bx+c=0的解 。 分析: 3个文本框、2个标签、1个按钮。一些辅助标签。 (1) 如果a=0,则不是二次方程,此时如果b=0,则提示重新输入系数;如果b0,则: x=-c/b (2) 如果a 0,且b2-4ac=0,则有两个相等的实根 (3)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论