版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、LOGOVisual Basic 程序设计程序设计第第4章章 程序控制结构程序控制结构1第第4 4章章 程序控制结构程序控制结构内容简介内容简介4.1 顺序结构4.2 选择结构4.3 循环结构4.4 程序控制结构举例2第第4 4章章 程序控制结构程序控制结构 有些简单程序可以只用单向的顺序设计结构来编写,但有些实际问题,往往需要针对不同的情况,有选择的执行某些步骤。选择结构就是根据给定“条件”的判断结果控制程序的流程。 VB用来实现选择结构的方式有: 语句:If、Select Case语句 控件:单选按钮、复选框及框架 函数:条件函数等 4.2 选择结构选择结构3第第4 4章章 程序控制结构程
2、序控制结构 【引例】设计一个程序:输入任意三条边,判断这三条边是否能构成三角形?如果能构成三角形,则输出三角形的面积。 (1)编程策略 此问题根据“条件(三条边是否能构成三角)” 的判断结果,进行不同处理的功能。若“条件”成立,则输出三角形的面积,否则结束。对于上述问题要用VB的选择结构来实现。4.2 选择结构选择结构4第第4 4章章 程序控制结构程序控制结构(2)编写代码 If a + b c And b + c a And c + a b Then s= Sqr(a+b+c)*(a+b-c )*( a+c-b )*(b+c-a)/2) s=Round(s,2) MsgBox 三角形的面积为
3、: & s &, , 求三角形的面积”Else MsgBox 不能构成三角形, , 显示判断结果End If 4.2 选择结构选择结构5第第4 4章章 程序控制结构程序控制结构 If语句有单分支、双分支和多分支等多种结构。可以根据所要解决的问题不同,选择适当的结构。 4.2 .1 If语句语句v格式格式 If 条件条件 Then 语句语句或或 If Then End If6第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句 1. 单分支If Then语句TF条件 语句块v功能功能 v说明: :是一个表达式,可以是关系表达式、逻辑表达式和算术表达式。对于数值表达式
4、,其值按非0为True,0为False进行判断。 :可以是一条或多条语句。只能写在一行上,若要写多条语句,语句之间用冒号(:)分隔。7第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句 1. 单分支If Then语句8第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句【例例4-12】已知3个数a、b、c,将它们从小到大排列(1)编程策略 解决此问题要进行两数之间的比较,根据比较的结果进行不同的处理,所以要使用选择结构实现,步骤如下:n如果ab,将a和b互换(a是a、b中的小者)n如果ac,将a和c互换(此时a是3个数中最小者)n如果bc,将b和c互换(此时b是3
5、个数中的中间数)真真真真真真ab?a bac?bc?a cc b9第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句【例例4-12】已知3个数a、b、c,将它们从小到大排列 (2)编写代码 If ab Then t=a:a=b:b=t If ac Then t=a:a=c:c=t End If If cb Then t=c:c=b:b=tv格式格式 If 条件条件 Then Else 或或 If Then Else End If 10第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句 2. 双分支If Then语句F条件语句块1T语句块2v功能功能 11第第4
6、4章章 程序控制结构程序控制结构4.2.1 If 语句语句【例例4-13】输入一个年份,判断该年份是否为闰年。(1)编程策略 采用InputBox函数输入年份Year1;判断Year1是否为闰年。 12第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句v【例例4-13】输入一个年份,判断该年份是否为闰年。(2)编写代码Year1= Val(InputBox(输入年份“)If Year1 Mod 400 = 0 Or (Year1 Mod 4 = 0 And Year1 Mod 100 0) Then Print Year1; 年是闰年Else Print Year1; 年不是闰
7、年End If v格式格式 If Then ElseIf Then ElseIf Then Else End If 13第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句 3. 多分支If Then语句v功能功能 FF条件条件1条件条件2条件条件n语句块语句块1语句块语句块2语句块语句块n语句块语句块n+1FTTT14第第4 4章章 程序控制结构程序控制结构4.2.1 If 语句语句【例例4-14】输入学生的成绩,评定其等级优秀优秀 90 Score 100良好良好 80 Score 90中等中等 70 Score 80及格及格 60 Score 70不合格不合格 Score
8、60等级等级 =15Score = Val(InputBox(请输入分数) If Score 60 Then Print 不合格 ElseIf Score 70 Then Print 及格 ElseIf Score 80 Then Print 中等 ElseIf Score 90 Then Print 良好 ElseIf Score 70 Then Print 中等 ElseIf Score 80 Then Print 良好 ElseIf Score 90 Then Print 优秀 Else Print 及格 End If 18第第4 4章章 程序控制结构程序控制结构4.2.2 多路分支多路
9、分支Select Case语句语句语句组语句组2 虽然使用If语句可以实现多分支的程序结构。但对于分支较多的情况,如果用If语句,则看起来结构不清晰,而且书写比较复杂。在VB中,提供了专门的处理多分支结构的情况语句Select Case语句,可以方便、直观地处理多分支的控制结构。v格式格式19第第4 4章章 程序控制结构程序控制结构4.2.2 多路分支多路分支Select Case语句语句语句组语句组2 Select Case 测试表达式测试表达式 Case 表达式列表表达式列表1语句块语句块1 Case 表达式列表表达式列表2语句块语句块2 Case 表达式列表表达式列表3语句块语句块3 C
10、ase 表达式列表表达式列表n语句块语句块n Case Else语句块语句块n+1 End Select 1数数值值表表达达式式2字字符符串串表表达达式式v功能功能20第第4 4章章 程序控制结构程序控制结构4.2.2 多路分支多路分支Select Case语句语句语句组语句组2列表1Case列表2Select Case测试表达式语句块1语句块2语句块n语句块n+1列表nElse21第第4 4章章 程序控制结构程序控制结构4.2.2 多路分支多路分支Select Case语句语句语句组语句组2vCase子句的几种格式子句的几种格式 常量常量Case 1 或或 Case a To子句子句 Cas
11、e 1 To 9 或或 Case a To z Is子句子句 Case Is 100 或或 Case Is 10 多个条件多个条件 Case 1 To 9, 12, 15, Is 100 22 用Select Case语句实现输入学生的成绩,评定其等级的例子:Score = InputBox(请输入分数)Select Case ScoreCase 0 to 59 Print 不合格Case 60 to 69 Print 及格Case 70 to 79 Print 中等Case 80 to 89 Print 良好Case 90 to 100 Print 优秀Case Else Print 不合适
12、的分数End Select23第第4 4章章 程序控制结构程序控制结构4.2.2 多路分支多路分支Select Case语句语句v【例例4-15】某商店进行购物打折优惠活动促销,根据每位顾客一次性购物的消费额给予不同的折扣,具体方法如下:x x 1000 (不不优惠)x0.95 1000 x 2000 (九五折优惠)x0. 9 2000 x 3000 (九折优惠)x0. 85 3000 x 5000 (八五折优惠)x0. 8 x 5000 (八八折优惠)y =24 x = Val(InputBox(请输入购物消费额:) Select Case x Case Is 1000 Print 不优惠
13、y = x Case Is 2000 Print 九五折优惠 y = 0.95 * x Case Is 3000 Print 九折优惠 y = 0.9 * x Case Is = 5000 Print 八折优惠 y = 0.8 * x End Select Print 应收款额为:; y 25 说明说明: 根据Select Case语句的执行过程,在执行Select Case语句时,从上到下与各个Case子句中的进行匹配,只有找到了相匹配的值,则执行该子句下的。因此,如果输入1500,由于与Case Is 1000子句中不匹配,则自然转到Case Is 2000子句。也就是说,虽然Case I
14、s 2000子句中的判断条件为2000,但按Select Case语句的执行过程,Case Is = 1000 And x 2000。如果颠倒Case子句的顺序,写成如下格式: Case Is 2000 y = 0.95 * x Case Is 1000 y = x 则无法完成题设的要求。即使输入小于1000的购物消费额也会执行Case Is 2000子句下的。这就说明Case子句间相互关联,是嵌套、包含或交叉的关系,这时Case子句间的顺序非常重要。如果Case子句间是并列关系,见【例4-14】,这时Case子句与顺序无关26第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套
15、选择结构的嵌套1 级级 选择结构的嵌套就是在一个选择结构中又包含另一个或多个完整的选择结构。例如在If语句中的Then分支或Else分支中又包含另一个If语句或Select Case语句,同样Select Case语句每一个Case分支中都可包含另一个If语句或Select Case语句。嵌套的形式可以是多种,层次不限。27第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套选择结构的嵌套If 条件条件1 Then 语句组语句组1Else 语句组语句组2End IfIf 条件条件2 Then 语句组语句组1-1Else 语句组语句组1-2End IfSelect Case Cas
16、e Case End Select3 级级2 级级1 级级语句组语句组1语句组语句组1-228第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套选择结构的嵌套3 级级1 级级注意注意: n嵌套只能在一个分支内嵌套,不能出现交叉。n虽然嵌套的层次不限。但在多层If嵌套时,要特别注意If与Else的匹配关系,Else必须与If配对使用。匹配原则:Else总是和它上面最靠近的未配对的If配对。29第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套选择结构的嵌套 【例例4-16】随机产生1个字符,判断该字符是字母还是数字;若是字母再判断是小写字母还是大写字母,若是数字还
17、要判断是奇数还是偶数。30第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套选择结构的嵌套字符:字符:ASCII码码32, 126可显示字符可显示字符随机数随机数32, 126:Int(Rnd * 95 + 32) 分类分类 : ASCII码码65, 90 大写字母大写字母 ASCII码码97, 122 小写字母小写字母 ASCII码码48, 57 数字数字 数字能被数字能被2整除,是偶数整除,是偶数 数字不能被数字不能被2整除,是奇数整除,是奇数编程策略编程策略31第第4 4章章 程序控制结构程序控制结构4.2.3 选择结构的嵌套选择结构的嵌套随机产生一个字符x=Int(Rnd * 95 + 32)是数字x48, 57吗?是是偶数 x2=x/2吗?是输出偶数否输出奇数否x32, 126、65, 90、其它97, 122小写字母65, 90大写字母Else其它字符32 Randomize x =Val( Int(Rnd * 95 + 32) If x = 48 And x intnum2,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工现场温控管理技术方案
- 2025年山东英才学院单招职业适应性测试题库及答案解析
- 2026山东济宁市第一人民医院长期引进高层次人才5人笔试备考题库及答案解析
- 钢结构工地施工噪音控制方案
- 2026四川省国土整治中心招聘编外聘用人员4人笔试参考题库及答案解析
- 2026西安市曲江第十三小学教师招聘考试备考试题及答案解析
- 2026年天津市武清区卫健系统公开招聘事业单位工作人员(含高层次人才)90人考试备考题库及答案解析
- 2026四川广安发展工程建设有限公司第一批项目合同制员工招聘5人考试备考题库及答案解析
- 卷材防水屋面施工材料保存与运输方案
- 2026广东佛山大学附属学校编制教师招聘5人笔试备考试题及答案解析
- 2025年黑龙江司法警官职业学院单招综合素质考试题库及答案解析
- 2026吉林农业大学三江实验室办公室招聘工作人员考试备考题库及答案解析
- 2025-2026学年第二学期初二年级物理备课组工作计划:实验教学创新+难点突破+分层辅导策略
- 2026内蒙古地质矿产集团有限公司社会招聘65人备考题库带答案详解(综合题)
- 2026年部编版新教材语文小学三年级下册教学计划(含进度表)
- 2026年中国工业软件行业发展研究报告
- 艾滋病培训考试试题
- 2026届文海-黄冈八模高三数学第一学期期末学业水平测试模拟试题含解析
- 2026年高考地理二轮复习策略
- LNG储罐定期检验监管细则
- 起重吊索具安全管理培训课件
评论
0/150
提交评论