VisualBasic程序设计(第二版) 丁爱萍 第5章 选择结构设计

上传人:E**** 文档编号:89354577 上传时间:2019-05-23 格式:PPT 页数:106 大小:1.03MB
返回 下载 相关 举报
VisualBasic程序设计(第二版) 丁爱萍 第5章  选择结构设计_第1页
第1页 / 共106页
VisualBasic程序设计(第二版) 丁爱萍 第5章  选择结构设计_第2页
第2页 / 共106页
VisualBasic程序设计(第二版) 丁爱萍 第5章  选择结构设计_第3页
第3页 / 共106页
VisualBasic程序设计(第二版) 丁爱萍 第5章  选择结构设计_第4页
第4页 / 共106页
VisualBasic程序设计(第二版) 丁爱萍 第5章  选择结构设计_第5页
第5页 / 共106页
点击查看更多>>
资源描述

《VisualBasic程序设计(第二版) 丁爱萍 第5章 选择结构设计》由会员分享,可在线阅读,更多相关《VisualBasic程序设计(第二版) 丁爱萍 第5章 选择结构设计(106页珍藏版)》请在金锄头文库上搜索。

1、第5章 选择结构设计,5.1 选择结构的概念 5.2 条件表达式 5.3 If语句 5.4 多分支条件选择语句Select Case 5.5 计时器控件 5.6 选择性控件 习题五,5.1 选择结构的概念,在日常生活和工作中,经常需要根据给定的条件进行分析、比较和判断,以采取相应的不同操作。,选择结构是计算机科学用来描述自然界和社会生活中分支现象的重要手段。其特点是:根据所给定的条件为真(即条件成立)与否,而决定从各实际可能的不同分支中执行某一分支的相应操作,并且任何情况下总有“无论分支多寡,必择其一;纵然分支众多,仅选其一”的特性。,5.2 条 件 表 达 式,5.2.1 关系运算符与关系表

2、达式 1. 关系运算符 关系运算符的作用是对两个表达式的值进行比较,若关系成立,则返回True,否则返回False。VB提供了6种关系运算符,如表5-1所示。,表5-1 关系运算符,2. 关系表达式 关系表达式是指用关系运算符将两个表达式连接起来的式子(例如2 * 3 2 + 3),关系表达式的格式为 表达式1关系运算符表达式2关系运算符表达式3.,5.2.2 布尔运算符与布尔表达式 布尔表达式是指用布尔运算符连接若干关系表达式或布尔值而组成的式子。如不等式2x3可以表示为2 = x And x = 3。布尔表达式的值也是一个布尔值。 常用的布尔运算符有And、Or、Not等3种,如表5-2所

3、示。,表5-2 布尔运算符,表5-3 布尔运算真值表,5.2.3 运算符的优先顺序 在一个表达式中进行多种操作时,VB会按一定的顺序进行求值,称这个顺序为运算符的优先顺序。运算符的优先顺序见表5-4。,表5-4 运算符的优先顺序,【例5-1】 写出VB表达式2 + 3 1 + 4 And Not 6 5 And Not 6 8 关系运算: False And Not True 非运算: False And False 结果: False,【例5-2】 根据下列所给条件,写出VB布尔表达式: (1) 一元二次方程ax2 + bx + c = 0有实根的条件为:a 0,并且b2 - 4ac 0。

4、(2) 闰年的条件是:年号(year)能被4整除,但不能被100整除;或者能被400整除。,5.3 If 语 句,5.3.1 单行结构条件语句If.Then.Else 单行条件语句比较简单,其语法格式为 If条件Then 语句序列1 Else语句序列2,【例5-3】 输入x,计算y的值。其中:,图5.1 计算分段函数y的值,设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图5.1所示。 (2) 编写事件代码。命令按钮Command1的单击(Click)事件代码为 Private Sub Command1_Click() Dim x As Single, y As Single 定

5、义x、y为单精度数,x = Val(Text1.Text) 输入x的值 If x = 0 Then y = Sqr(x) Else y = -x 判断并计算 Text2.Text = y 输出结果 Text2.Locked = True End Sub 程序运行结果如图5.1所示。,图5.2 输出两数中的较大数,【例5-4】 已知两个数x和y,比较它们的大小,输出较大数。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图5.2所示。 (2) 编写事件代码。命令按钮Command1的单击(Click)事件代码为,Private Sub Command1_Click() Dim x

6、 As Single, y As Single 定义变量数据类型为单精度数 x = Val(Text1.Text) y = Val(Text2.Text) If x y Then Label3.Caption = “较大数为“ & Str(x) End Sub,或者编写代码为 Private Sub Command1_Click() Dim x As Single, y As Single 定义变量数据类型为单精度数 x = Val(Text1.Text) y = Val(Text2.Text) If x y Then t = x: x = y: y = t 如果x小,则交换x、y的值 Lab

7、el3.Caption = “较大数为“ & Str(x) 输出比较结果 End Sub 程序运行结果如图5.2所示。,5.3.2 使用IIf函数 使用IIf函数可以实现一些比较简单的选择结构。IIf函数的语法结构为 IIf(条件表达式,真部分,假部分),5.3.3 块结构条件语句If.Then.Else.End If 虽然单行If语句使用方便,可以满足许多选择结构程序设计的需要,但是当Then部分和Else部分包含较多内容时,在一行中就难以容纳所有命令。为此,VB提供了块If语句,将一个选择结构用多个语句行来实现。,块If语句又称为多行If语句,其语法结构为 If条件Then 语句列1 El

8、se 语句列2 End If,【例5-5】 将例5-3中命令按钮Command1的单击(Click)事件代码改为多行If语句: Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x = 0 Then y = Sqr(x) Else y = -x End If Text2.Text = y Text2.Locked = True End Sub,【例5-6】 将例5-4中命令按钮Command1的单击(Click)事件代码改为多行If语句: Private Sub Command1_C

9、lick() Dim x As Single, y As Single x = Val(Text1.Text) y = Val(Text2.Text) If x y Then,Label3.Caption = “较大数为“ & Str(y) Else Label3.Caption = “较大数为“ & Str(x) End If End Sub,5.3.4 If语句的嵌套 1. If语句的嵌套 If语句的嵌套是指If或Else后面的语句块中又包含If语句。语句形式如下: If条件1Then If条件2Then End I End If,【例5-7】 键盘输入3个不同的数,将它们从大到小排序。

10、(1) 建立应用程序用户界面并设置对象属性,如图5.3所示。 (2) 编写事件代码。命令按钮Command1的单击(Click)事件代码为,图5.3 从大到小排序,Private Sub Command1_Click() Dim x As Single, y As Single, z As Single x = Val(Text1.Text) 输入数据 y = Val(Text2.Text) z = Val(Text3.Text) If x y Then 将第1个数与第2个数进行比较,使大数在前 t = x : x = y : y = t 交换数据,End If If y z If x y,此

11、时的x、y已不再是原x、y的值 t = x : x = y : y = t End If End If Label4.Caption = “从大到小排序结果:“ & Str(x) & Str(y) & Str(z) End Sub,【例5-8】 某百货公司为了促销,采用购物打折扣的优惠办法,即每位顾客一次购物: (1) 在1000元以上2000元以下者,按九五折优惠; (2) 在2000元以上3000元以下者,按九折优惠; (3) 在3000元以上5000元以下者,按八五折优惠; (4) 在5000元以上者,按八折优惠。,设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图5.4所

12、示。 (2) 编写事件代码。命令按钮Command1的单击(Click)事件代码为,图5.4 计算优惠价,Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x 1000 Then y = x 不打折 Else If x 2000 Then 九五折 y = 0.95 * x Else If x 3000 Then,y = 0.9 * x 九折 Else If x 5000 Then y = 0.85 * x 八五折 Else y = 0.8 * x 八折 End If,End If E

13、nd If End If Text2.Text = y Text2.Locked = True End Sub 程序运行结果如图5.4所示。,2. If语句的嵌套格式ElseIf 如果出现多层If语句嵌套,将使程序冗长,不便阅读。为此VB提供了带ElseIf的块If语句来处理当条件为假时又内嵌块If语句的情形,以使程序简化易写。其语法结构为,If条件1Then 语句列1 ElseIf条件2Then 语句列2 Else 其他语句列 End If,【例5-9】 在例5-8中使用带ElseIf的块If语句来计算出优惠价。将命令按钮Command1的单击(Click)事件代码改为 Private Su

14、b Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x 1000 Then y = x 不打折 ElseIf x 2000 Then y = 0.95 * x 九五折,ElseIf x 3000 Then y = 0.9 * x 九折 ElseIf x 5000 Then y = 0.85 * x 八五折 Else y = 0.8 * x 八折 End If Text2.Text = y Text2.Locked = True End Sub,【例5-10】 编制命令按钮代码,要求每单击一次命令按钮,就会

15、依次在窗体上显示下面诗词中的诗句。 静夜思 床前明月光, 疑是地上霜。 举头望明月, 低头思故乡。 (1) 建立应用程序用户界面并设置对象属性,如图5.5所示。 (2) 编写事件代码。命令按钮Command1的单击(Click)事件代码为,Private Sub Command1_Click() Label1.FontName = “隶书“ Label1.FontSize = 14 Label1.ForeColor = QBColor(4) Label1.Caption = “静夜思“ 设置标签Label1的标题 Command1.Caption = “显示“ 设置命令按钮的标题属性,Stat

16、ic i As Integer 声明静态变量i为整型数 i = i + 1 Mytext1 = “床前明月光,“ Mytext2 = Mytext1 + Chr(13) + “ 疑是地上霜。“ Chr(13)表示换行 Mytext3 = Mytext2 + Chr(13) + “ 举头望明月,“ Mytext4 = Mytext3 + Chr(13) + “ 低头思故乡。“ If i = 1 Then Label2.Caption = Mytext1 ElseIf i = 2 Then,Label2.Caption = Mytext2 ElseIf i = 3 Then Label2.Caption = Mytext3 Else L

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号