




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章 选择结构程序设计 VB中提供了三种用来实现选择结构的流程控 制语句,即: 块结构条件语句IfThenEnd If 多分支条件语句ElseIf 多分支选择语句Select CaseEnd Select 5.1 块if语句 块结块结 构if语语句语语法格式如下: 块结构if语句语法格式如下: If Then Else End If 其中为必选项,它是一个逻辑值的表达 式,其返回结果必须是True或False。对于数值表达 式,VB将0作为False,非0作为True 来处理;对于 字符串表达式,VB只允许出现包含数字的字符串, 当字符串中的数字值为0时,则认为是False,否则 认为是True。 FT 语句(块)1语句(块)2 表达 式 说明: 说明: 1整个块结构必须以If开始,以End If结束。 2块结构If 语句中Then后面的语句不能与其写在 同一行上,否则,必须加上分隔符。 3块结构中的是可以省略的。 4.在块结构中,If后面显式的给出了判断条件, Else后面虽然没有显式的给出一个条件,但相当 于存在一个与If部分相反的隐含条件。 块结构If 语句的简单形式: If Then Else 如:If X0 Then Print Print -X If X0 Then Print 简单的块结构If语句解决是“二选一”的两分支选 择问题。在实际应用中,经常会遇到“多分支” 选择的程序,即从多种情况中选择执行其中一 种情况,这时,就要使用块if语句的嵌套。 5.2 块if语句的嵌套 块结构If语句可以嵌套,即在上述结构中的和 部分仍然可以包含另外一个块结构If语句。 例如,下面就是一个简单的块结构嵌套的语句。 If Then If Then Else End If Else End If F T T T 表达式1 表达式2 表达式 nn 语句块11语句块2语句块nn语句块n+11 F 这个语句就是在块结构的If部分嵌套了 另外一个块结构。执行该语句时,首先判 断是否成立,如果成立, 则再判断是否成立,如果成立,则 执行,否则执行;如 果不成立,则执行。 当然,在Else部分也可以嵌套另外的块If结构 ,If和Else部分也可以同时嵌套。 说明: 1如果存在嵌套时,语句中的每一个Else 必须和一个If相对应,应避免产生混乱。在 书写时,可以将同一层的If子句和Else子句 左对齐,内层的各语句块相对于外层向右 缩进若干空格,以使程序结构更加清楚, 便于阅读和查错。 2每一个块结构都必须以If开始,以End If 结束。 3利用块If语句的嵌套可以解决“多分支” 选择的问题。 5.3 ElseIf语句 格式: If 条件1 then 语句块1 ElseIf 条件2 then 语句块2 Else 语句块n+1 End If 格式说明: 1可以放置任意多个ElseIf子句。 2关键字ElseIf中间没有空格,不能写成 Else If。 功能:依次判断条件,如某一条件成立,则 执行其下面的语句块;如果所有条件均不 成立,则执行Else后面的语句。在相应语 句块执行完后,会跳过End If,执行其后 面的语句。 功能说明: 1不管有几个ElseIf子句,程序执行完一个 语句块后,其余ElseIf子句不再执行。 2当多个ElseIf子句中的条件都成立时,只 执行第一个条件成立的子句中的语句块。 因此,在使用ElseIf语句时,要特别注意各 判断条件的前后次序。 ElseIf语句可以用来处理当条件不成 立时又内嵌块If语句的情形,以使程序简化 易写。 3Select Case语句(多分支结构) F T F F 取值n 语句块n+1 语句块n T 取值2 语句块2 T 取值1 语句块1 Select Case 结构 格式: Select Case 表达式 Case 取值1 语句块1 Case 取值2 语句块2 Case 取值n 语句块n Case Else 语句块n+1 End Select 格式说明: 1“测试表达式”可以是数值表达式或字符 串表达式。 2“表达式列表”与“测试表达式”的类型必 需相同。 3“表达式列表”由表5-1所示形式的表达式 组成。 4当使用多个表达式组成列表时,表达式 与表达式之间要用英文逗号“,”隔开。 形式示例说明 (1)表达式 Case 100+a 数值或字符串表达式 (2)一组用逗号分隔的枚举值 Case 2,4,6,8 测试表达式的值等于2,4,6,8之一 (3)表达式1 To表达式2 Case 1 To 10 1 测试表达式 10 (4)Is 关系运算符表达式 Case Is 20 测试表达式 20 功能: 根据“测试表达式”的值,选择第一个符合条件的 语句块执行。 Select Case语句的执行过程是:先求“测试表达 式”的值,然后顺序测试该值符合哪一个Case 子句中情况,如果找到了,则执行该Case子 句下面的语句块,然后执行End Select后面的 语句;如果没找到,则执行Case Else后面的 语句块,然后执行End Select后面的语句。 (三)循环程序结构 在编程时,常常需重复执行一组语句,这可通过 循环结构来实现。VB中提供了两种类型的循环语句 :一种是计数循环语句;另一种是条件循环语句。 循环体 循环变量增加步长 循环变量获得初值 F T 循环变量在终值内 For循环的执行过程 格式:For 循环变量 = 初值 To 终值 Step 步长 Next 循环变量 1、ForNext语句(计数循环) 说明: 循环变量必须为数值型。 循环的初值、终值和步长都是数值表达式。其中,增 量参数可正可负。如果没有设置step,则增量默认为1。 Next是循环终端语句,在Next后面的循环变量与For 中的循环变量必须相同。当循环是单层循环时,Next后 面的循环变量可以不写。 例:求1+2+3+100。 sum=0 For i=1 to 100 sum=sum+i Next 例:找出所有小于50的正整数中等于7的倍数的数。 For i=7 to 50 step 7 print i Next 练习:1、编写程序求 S=20!的值 2、编写程序求 S=12+22+32+n2 (其中n的值由用户输入) 作业:要求用 ForNext语句编写以下程序: 1、计算Y=A!+B!+C!的值,其中A=6,B=8,C=5。 2、求半径从1到n的n个圆面积之和 (其中n的值由用户输入)。 练习: (1)通过键盘输入10个学生的考试成绩,计算并显示 其平均成绩。 (2)从键盘输入10个整型数据,将其中的负数以及负 数的和显示出来。 2、条件循环语句(DoLoop) (1)当型循环(Do WhileLoop、DoLoop While) (2)直到型循环(Do Until Loop、DoLoop Until) 格式:Do While 条件表达式 循环体 Exit Do 循环体 Loop (1)当型循环 Do While Loop 说明: 循环体中要有控制循环的语句,以避免出现死循环。 由于该循环的特点是先判断条件,然后再决定是否要 执行循环体里的语句。所以,这种循环可以一次也不执 行循环体。 Exit Do 表示当遇到该语句时,强制退出循环,执行 Loop后的下一条语句。 T Loop之后的语句 条件 循环体 F 例:S=1+2+3+n,编写程序求使得S1000的最小n值。 Dim n As Integer, s As Integer s = 0 n = 1 Do While s 1000的最小n值是:“ “是一个素数“ Else Print n; “不是素数“ End If End Sub 【例4】假设我国现有人口12亿,若年增 长率为1.5%,试计算多少年后我国人口增 加到或超过20亿。 人口计算公式为:p=y(1+r)n y为人口初值,r为年增长率,n为年数 。 Private Sub Form_click() Dim p!, r!, I% p = 12 r = 0.015 I = 0 While p = 90 Then Text2.Text = “优秀“ ElseIf score = 80 Then Text2.Text = “良好“ ElseIf score = 70 Then Text2.Text = “中“ ElseIf score = 60 Then Text2.Text = “及格“ Else Text2.Text = “不及格“ End If End Sub “退出”按钮代码 Private Sub Command2_Click() End End Sub 把例中 “鉴定”按钮的代码用Select Case语句改写。 Private Sub Command1_Click() Dim score! score = Text1.Text Select Case score Case Is = 90 Text2.Text = “优秀“ Case Is = 80 Text2.Text = “良好“ Case Is = 70 Text2.Text = “中“ Case Is = 60 Text2.Text = “及格“ Case Else Text2.Text = “不及格“ End Select End Sub 【例7】任意输入三个数,找出其中 的最大值。 Private Sub Command1_Click() Dim a As Single, b As Single, c As Single, max As Single a = Text1.Text b = Text2.Text c = Text3.Text max = a If b max Then max = b If c max Then max = c Text4.Text = max End Su
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版高端别墅清洁人员劳动合同
- 2025年新能源汽车抵押融资合同样本
- 消费者选择行为变化-洞察及研究
- 2025年度生活垃圾运输合同废弃物处理设施运营环保责任合同
- 2025电商企业年度运营项目总监劳动合同
- 2025版试用期劳动合同:电力行业试用期员工安全生产责任书
- 2025版起重机安全认证买卖合同范本
- 2025版高端景观铁艺栏杆施工合作协议
- 2025年网络安全防护系统设计与实施合同
- 2025变更劳动合同协议书:文化用品企业销售员合同调整方案
- 子宫憩室护理查房
- 河南省开封市西北片区2023-2024学年九年级英语第一学期期末达标检测模拟试题含解析
- 体育开学第一课课件
- 被诈骗的起诉书范文
- 医院病历单请假用
- 肝胆外科专科知识题库及答案
- 滁州市珠龙广卫绢云母粉厂滁州市南谯区将军山绢云母矿1万吨-年露天采矿工程项目环境影响报告书
- 迷你中长导管-
- 钢质防火门安装施工方法
- 优化物理教学策略的思考(黄恕伯)
- GB/T 26358-2022旅游度假区等级划分
评论
0/150
提交评论