电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB5

29页
  • 卖家[上传人]:E****
  • 文档编号:89183848
  • 上传时间:2019-05-20
  • 文档格式:PPT
  • 文档大小:216KB
  • / 29 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、本章主要内容: 条件表达式 单条件选择语句 多条件选择语句 计时器控件 单选钮和复选框控件,第5章 选择结构设计,5.1 条件表达式 在条件语句中作为判断依据的表达式称为“条件表达式”,条件表达式的取值为布尔值:真(True)或假(False)。在VB表达式中,True的值等于1,False的值等于0。 根据“条件”的简单或复杂程度,条件表达式可以分为两类:关系表达式与布尔表达式。 5.1.1 关系运算符与关系表达式 1. 关系运算符 关系运算符的作用是对两个表达式的值进行比较,若关系成立,则返回True,否则返回False。VB提供了6种关系运算符,见表5-1。,表5-1 关系运算符,说明: 关系运算符两侧可以是数值表达式、字符型表达式或日期型表达式,也可以是作为表达式特例的常量、变量或函数。但其两侧的数据类型必须完全一致。 关系运算符的运算级别相同。,2. 关系表达式 关系表达式是指用关系运算符将两个表达式连接起来的式子(例如2 * 3 2 + 3),关系表达式的格式为: 表达式1 关系运算符 表达式2 说明: 关系表达式的运算次序为:先分别求出关系运算符两侧表达式的值,然后再把二

      2、者进行比较,二者的关系若与关系运算符指示的一样,则关系运算的结果为真True,否则为假False。 数值型数据按其数值大小进行比较。 日期型数据将日期看成“yyyymmdd”的8位整数,按数值大小比较。, 字符型数据按其ASCII码值进行比较。在比较两个字符串时,首先比较两个字符串的第一个字符,其中ASCII码值较大的字符所在的字符串大。如果第一个字符相同,则比较第二个,依此类推。 常见字符值的大小如下: “空格“ “0“ “9“ “A“ “Z“ “a“ “z“ “任何汉字“ 不要对单精度数或双精度数进行等于“=”比较,例如:1.0/3.0*3.0=1.0 在数学上该表达式为恒等式。但由于计算机运算时的浮点误差,将造成不相等。 数学不等式2x3,在VB中不能写成2=x=3。,5.1.2 布尔运算符与布尔表达式 布尔表达式是指用布尔运算符连接若干关系表达式或布尔值而组成的式子。如不等式2x3可以表示为2 = x And x = 3。布尔表达式的值也是一个布尔值。 常用的布尔运算符有:And、Or、Not等3种,见表5-2。 表5-2 布尔运算符,说明: 布尔运算符两侧若有数值数据出现,则

      3、将数值数据转换为二进制数(补码形式)进行按位运算。此时,1为真,0为假。 布尔运算真值表见表5-3。,表5-3 布尔运算真值表,例如: 1 +2 4 And 6 = 2 Or 3 * 2 5 结果为:True 关系表达式绝不能比较布尔型数据!例如,假设Yn为布尔型变量,下面写法是错误的: Yn = True,5.1.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布尔表达式: 一元二次方程ax2 + bx + c = 0有实根的条件为:a 0,并且

      4、b2 - 4ac 0。 闰年的条件是:年号(year)能被4整除,但不能被100整除;或者能被400整除。 分析: 一元二次方程ax2 + bx + c = 0有实根的条件有两个,即a 0和b2 - 4ac 0。 a 0用VB表达式表示为a 0;b2 - 4ac 0用VB表达式表示为b2 4 * a * c = 0。 两者是逻辑与And的关系,用And连接上面的两个式子,结果为: a 0 And b2 4 * a * c = 0 设变量y表示年份,被某个数整除,可以用数值运算符Mod或Int()函数来实现。 能被4整除,但不能被100整除的表达式为y Mod 4 = 0 And y Mod 100 0;能被400整除的表达式为y Mod 400 = 0。 两者取“或”,即可得出判断闰年的布尔表达式: (y Mod 4 = 0 And y Mod 100 0) Or (y Mod 400 = 0) 用Int()函数表示为: (Int(y/4) = y/4 And Int(y/100) y/100) Or (Int(y/400) =y/400),5.2 单条件选择语句If 5.2.1 单行

      5、结构条件语句IfThenElse 单行条件语句比较简单,其语法格式为: If 条件 Then 语句1 Else 语句2 说明: 条件可以是关系表达式、布尔表达式或数值表达式。如果以数值表达式作条件,则非0值为真,0为假。 如果没有Else子句,语句1为必要参数,在条件为True时执行。 【例5-3】 【例5-4】,5.2.2 使用IIf函数 IIf函数的语法结构为: IIf(条件表达式,真部分,假部分) 说明: 条件表达式可以是关系表达式、布尔表达式、数值表达式。如果用数值表达式作条件,则非0为真,0为假。 真部分是当条件表达式为真时函数返回的值,可以是任何表达式。 假部分是当条件表达式为假时函数返回的值,可以是任何表达式。 语句y = IIf(条件表达式,真部分,假部分) 相当于: If 条件表达式 then y=真部分 Else y=假部分 执行IIf函数时,先分别计算真部分和假部分的值,然后根据条件输出结果。例如, y = IIf(x = 0, Sqr(Abs(x) , x),5.2.3 块结构条件语句IfThenElseEnd If 块If语句又称为多行If语句,其语法结构为:

      6、 If 条件 Then 语句组1 Else 语句组2 End If 说明: 在块形式中,If语句必须是第一行语句。If块必须以一个End If语句结束。 当程序运行到If块时,首先测试条件。如果条件为True,则执行Then之后的语句组1。如果条件为False,并且有Else子句,则程序会执行Else部分的语句组2。而在执行完Then或Else之后的语句列后,会从End If之后的语句继续执行。 Else子句是可选的。,【例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_Click(

      7、) 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.2.4 If语句的嵌套 1. If语句的嵌套 If语句的嵌套是指If或Else后面的语句块中又包含If语句。语句形式如下: If 条件1 Then If 条件2 Then End If End If 【例5-7】 【例5-8】,2. If语句的嵌套格式ElseIf ElseIf的块If语句语法结构为: If 条件1 Then 语句组1 ElseIf 条件2 Then 语句组2 . Else 其他语句组 End If,说明: (1) 在If块中,Else和ElseIf子句都是可选的。可以放置任意多个ElseIf子句,但是都必须在Else子句之前。 (2) 当程序运行到If块时,将测试条件1。如果条件为True,则执行Then之后的语句。如果条件为Fal

      8、se,则每个ElseIf部分的条件式(如果有的话)会依次计算并加以测试。如果找到某个为True的条件时,则其紧接在相关的Then之后的语句组会被执行。如果没有一个ElseIf条件为True(或是根本就没有ElseIf子句),则程序会执行Else部分的其他语句组。而在执行完Then或Else之后的语句组后,会从End If之后的语句继续执行。 【例5-9】在例5-8中使用带ElseIf的块If语句来计算出优惠价,只需将其中命令按钮Command1的单击(Click)事件代码改为:,Private Sub 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.L

      9、ocked = True End Sub 【例5-10】,5.3 多分支选择语句Select Case Select Case语句的语法格式为: Select Case 测试条件 Case 表达式表1 语句组1 Case 表达式表2 语句组2 . Case Else 其他语句组 End Select,说明: (1)测试条件为必选参数,是任何数值表达式或字符串表达式。 (2) 在Case子句中,表达式表用来测试其中是否有值与测试条件相匹配。Case子句中的表达式表是一个或多个表5-5所示形式的表达式列表。 表5-5 表达式的形式,当使用多个表达式的列表时,表达式与表达式之间要用逗号“,”隔开。 (3)语句组为可选参数,是一条或多条语句,当表达式表中有值与测试条件相匹配时执行。 (4) Case Else子句用于指明其他语句列,当测试条件和所有的Case子句表达式表中的值都不匹配时,则会执行这些语句。虽然不是必要的,但是在Select Case区块中,最好还是加上Case Else语句来处理不可预见的测试条件值。如果没有Case值匹配测试条件,而且也没有Case Else语句,则程序会从End Select之后的语句继续执行。 【例5-11】在例5-8中使用Select Case语句来计算优惠价,只需将其中命令按钮Command1的单击(Click)事件代码改为:,Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) Select Case x C

      《Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB5》由会员E****分享,可在线阅读,更多相关《Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB5》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.