




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
选择结构 在程序设计中经常需要根据不同的情况采用不同的处理 例如 一元二次方程的求根问题 要根据判别式小于零或大于等于零的情况 采用不同的数学表达式进行计算 对于这类问题 必须借助选择结构 本章主要介绍实现选择结构的语句 包括 行If语句 块If语句 ElseIf语句 SelectCase语句 以及选择结构在程序设计中的应用 4 1块If 4 1 1块If的格式 功能格式 If条件then语句块1 Else语句块2 EndIf 说明 1 条件 一般为关系表达式或逻辑表达式 通常把关系表达式或逻辑表达式的值为真时 称为条件满足 值为假时 称为条件不满足 反之亦然 2 语句块1 语句块2分别是 条件 满足或不满足时 处理方法的描述 可以是若干个语句 3 If Then Else EndIf是VB的保留字 功能 块If首先判断 条件 其值为真时 执行语句块1 为假时执行语句块2 当缺省 Else 中的内容时 该选择结构只对条件满足的情况进行处理 执行过程如图4 1所示 图4 1块If执行过程 例4 1 火车站行李费的收费标准是50公斤以内 包括50公斤 0 20元 公斤 超过部分0 50元 公斤 编写程序 要求根据输入的任意重量 计算出应付的行李费 根据题意计算公式如下 程序代码如下 计算 按钮代码PrivateSubCommand1 Click Dimweightassingle payassingleweight Text1 Text Ifweight 50Thenpay weight 50 0 5 50 0 2Elsepay weight 0 2EndIfText2 Text payEndSub PrivateSubCommand2 Click Text1 Text Text2 Text EndSubPrivateSubCommand3 Click EndEndSub 4 1 2块If的嵌套所谓块If语句的嵌套 就是在语句块1或语句块2中又包含块If语句 例4 2 任意输入三个数 按照从大到小的顺序输出 算法分析 排序的基本方法 就是比较大小 然后根据比较的结果分别加以处理 本例把三个数分别放在A B C中 处理过程为 若A B为真 交换A B的值 否则不做处理 这样就保证了A B 然后再用C去比较 具体流程如图4 3所示 按如图4 4所示设置界面 属性设置如表4 2所示 表4 2例4 2控件属性设置 程序代码如下 排序 按钮代码PrivateSubCommand1 Click DimaAsSingle cAsSingle bAsSinglea Text1 Textb Text2 Text c Text3 Text 三个文本框的数据赋值给变量Ifa bThent aa bb t a b时交换a b的值 EndIf 保证A BIfc aThen 用C去比较Text4 Text c C A成立 C最大Text5 Text aText6 Text bElse Ifc bThenText4 Text a C B成立 C最小Text5 Text bText6 Text cElse Text4 Text a C处于中间Text5 Text cText6 Text bEndIfEndIfEndSub 退出 按钮代码PrivateSubCommand2 Click EndEndSub 注意 1 保持块If结构的完整 不要漏掉EndIf 2 尽量采用缩进式书写格式 使结构清晰 3 尽量选择恰当的条件 使程序简单明了 4 2ElseIf语句 当需要进行多路分支处理时 例如 根据一个学生的分数 判定他的等级 优 良 中 及格 不及格 由于条件比较多 会出现较繁琐的嵌套 而利用ElseIf语句或SelectCase语句则可以方便解决这类问题 格式 If条件1then语句块1ElseIf条件2then语句块2 Else语句块n 1 EndIf 功能 1 依次判断条件 如果找到一个满足的条件 则执行其下面的语句块 然后跳过EndIf 执行后面的程序 2 如果所列出的条件都不满足 则执行Else语句后面的语句块 如果所列出的条件都不满足 又没有Else子句 则直接跳过EndIf 不执行任何语句块 图4 4ElseIf结构执行过程F TTTFF条件1条件n条件2语句块1语句块2语句块n语句块n 1EndIf下一语句 图4 4ElseIf结构执行过程 例4 4 输入一个学生的一门课分数X 百分制 当x 90时 输出 优秀 当80 x 90时 输出 良好 当70 x 80时 输出 中 当60 x 70时 输出 及格 当x 60时 输出 不及格 算法分析 本例适合用多路分支结构来解决 运行界面如图4 7所示 图4 7例4 4运行界面 属性设置如表4 4所示 表4 4例4 4控件属性设置 程序代码如下 鉴定 按钮代码PrivateSubCommand1 Click Dimscore score Text1 TextIfscore 90ThenText2 Text 优秀 ElseIfscore 80ThenText2 Text 良好 ElseIfscore 70ThenText2 Text 中 ElseIfscore 60ThenText2 Text 及格 Else Text2 Text 不及格 EndIfEndSub 退出 按钮代码PrivateSubCommand2 Click EndEndSub ElseIf语句 实际完成的是块If的嵌套 它和块If嵌套的格式上有很大区别 ElseIf结构只有一对If和EndIf语句 另外应注意 ElseIf 和 ElseIf 的区别 块If和ElseIf是实现选择结构的主要语句 另外 VB还提供了功能与它们类似的行If语句和SelectCase语句 4 3行If语句 格式 If条件then语句1 Else语句2 功能 当条件满足时 执行语句1 条件不满足时 执行语句2 例4 6 任意输入三个数 找出其中的最大值 程序代码如下 PrivateSubCommand1 Click DimaAsSingle bAsSingle cAsSingle maxAsSinglea Text1 Textb Text2 Textc Text3 Textmax aIfb maxThenmax b Ifc maxThenmax cText4 Text maxEndSub 4 4SelectCase语句 当对一个表达式的不同取值情况作不同处理时 用ElseIf语句程序结构显得较为杂乱 而用SelectCase语句将使程序的结构更清晰 SelectCase语句又称为情况语句 格式 SelectCase测试表达式Case表达式列表1语句块1Case表达式列表2语句块2 Case表达式列表n语句块n CaseElse语句块n 1 EndSelect 功能 根据 测试表达式 的值 选择第一个符合条件的语句块执行 SelectCase语句的执行过程是 先求 测试表达式 的值 然后顺序测试该值符合哪一个Case子句中情况 如果找到了 则执行该Case子句下面的语句块 然后执行EndSelect下面的语句 如果没找到 则执行CaseElse下面的语句块 然后执行EndSelect下面的语句 说明 1 测试表达式 可以是数值型或字符串型表达式 2 表达式列表 形式有以下三种 1 一个表达式或用逗号隔开的若干表达式例如 Case2 4 6 8表示的情况是 测试表达式的值等于2 4 6 8之一 2 表达式1To表达式2例如 Case80To90表示的情况是 80 测试表达式 90 3 Is关系运算符表达式例如 CaseIs x 2表示的情况是 测试表达式 x 2 例4 7 把例4 3中 鉴定 按钮的代码用SelectCase语句改写 PrivateSubCommand1 Click
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年深海矿产资源勘探技术装备创新与市场潜力报告
- 2025年高中数学概率统计知识冲刺押题试卷
- 2025年房地产估价师考试房地产估价实务冲刺试卷
- 2025年考研英语(一)阅读理解技巧精讲 阅读理解高分策略
- 2025年公共营养师二级考试专项训练试卷及真题解析
- 现代化家具知识培训总结课件
- 2025年环境影响评价工程师考试案例分析试卷 环评报告专项强化
- 现代农业知识培训课件
- 测试工程师的岗位职责
- 新重庆市劳动合同范本
- 2025内蒙古锡林郭勒盟公安局招聘警务辅助人员95人考试参考题库附答案解析
- 2025 年小升初苏州市初一新生分班考试数学试卷(带答案解析)-(人教版)
- 2025年建筑工程管理与实务一级建造师考试冲刺押题卷
- 北京大学人民医院-医疗知情同意书汇编
- 档案管理员述职报告9篇
- 舞台灯光基础知识教学课件
- 牙体牙髓病最全课件
- 脑卒中的功能锻炼课件
- 护理质控简报
- JJG 700 -2016气相色谱仪检定规程-(高清现行)
- 倪海厦X年扶阳论坛演讲
评论
0/150
提交评论