




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
5 2循环结构与循环结构语句 5 1分支结构与分支结构语句 第五章选择分支与循环 5 3程序示例 先对条件测试 根据测试的结果选择执行不同的分支 1 If条件语句 2 SelectCase结构 VisualBasic程序设计 5 1分支结构与分支结构语句 3 条件函数 例 Ifscore 60ThenPrint 祝贺你考试通过 EndIfPrint 继续努力 等价于 IfScore 60ThenPrint 祝贺你考试通过 Print 继续努力 1 If Then结构 格式 1 If条件Then A组语句 EndIf 2 If条件Then语句 执行规则 若条件成立 执行A组语句 条件不成立 跳过A组语句 5 1 1If条件语句 使用前提 条件成立时 A组语句中只一条执行语句 例 Ifscore 60ThenPrintscorePrint 祝贺你考试通过 EndIfPrint 继续努力 1 If Then结构 例1 输入两个数 分别放在x和y变量中 比较它们大小 然后将大数放在x中 小数放在y中 x Text1 textY Text2 textIfx yTheny xx yEndIfPrintx y t xx yy t 思考 3个数的排序如何实现 5 1 1If条件语句 例 Ifscore 60ThenPrint 祝贺你考试通过 ElsePrint 考试未通过 EndIfPrint 继续努力 2 If Then Else结构 格式 If条件ThenA组语句ElseB组语句ENDIf 执行规则 条件成立 执行A组语句 条件不成立 执行B组语句 例2 计算分段函数 可用单分支 双分支和两个单分支分别实现 5 1 1If条件语句 2 If Then Else结构 开始 5 1 1If条件语句 例5 1 已知 三边的长 设计求 面积的程序 例 思考 输入二级考试成绩 要求显示对应三级制的评定 评定条件为 5 1 1If条件语句 3 If Then ElseIf结构 Mark Text1 TextIfMark 90ThenPrint 优 ElseIfMark 60ThenPrint 通过 ElsePrint 未通过 EndIf 格式 If条件1Then A组语句 ElseIf条件2Then B组语句 ElseIf条件3Then C组语句 Else n组语句 EndIf 5 1 1If条件语句 格式 If条件1ThenA组语句ElseIf条件2ThenB组语句ElseIf条件3ThenC组语句 Elsen组语句EndIf 3 If Then ElseIf结构 注意 多分支语句中 有多个分支同时满足 只执行第一个与之匹配的语句块 注意ElseIf的写法 5 1 1If条件语句 例编写一个按月收入额计算个人收入调节税的程序 P76例5 8 分析 选择语句结构每个条件的表示及先后顺序 3 If Then ElseIf结构 5 1 1If条件语句 4 If语句的嵌套 5 1 1If条件语句 If语句的嵌套是指if或else后面的语句块中又包含If语句 语句形式 IfThenIfThen EndIf EndIf 注意 1 对于嵌套结构 为了增强程序的可读性 应该采用缩进形式书写 2 If语句形式若不在一行上书写 必须与EndIf配对多个If嵌套 EndIf与它最接近的If配对 SelectCase测试表达式Case测试项1A组语句Case测试项2B组语句 CaseElsen组语句EndSelect 说明 测试表达式的值应是数字或字符型测试项的取值必须与测试表达式的值类型相同 常用形式为 具体取值 用逗号隔开如 1 5 9连续的范围 界1TO界2如 12To20满足某个条件 Is运算符如 Is 10三种形式可以组合使用 5 1 2SelectCase语句 SelectCase结构 例 输入二级考试成绩 要求显示对应三级制的评定 Mark Val Text1 Text SelectcaseMarkcaseis 90Print 优 case90to60Print 通过 CaseElsePrint 未通过 Endselect Mark Val Text1 Text K mark 10SelectcaseKcase10 9Print 优 case8to6Print 通过 CaseElsePrint 未通过 Endselect 5 1 3条件函数 可选 1 Iif函数 替代IF语句格式 Iif 表达式 条件为真的值 条件为假的值 例 实现将X Y变量中的大数放入Tmax变量 用If语句 IfX YThenTmax XElseTmax YEndIf 用Iif函数 Tmax IIf X Y X Y 2 Choose函数 替代SelectCase语句格式 Choose 整数表达式 选项列表 例 用1 2 3 4分别返回不同的运算符 Nop Int Rnd 4 1 SelectCaseNopCase1OP Case2OP Case3OP CaseElseOP EndSelect Nop Int Rnd 4 1 Op Choose Nop 5 1 3条件函数 可选 5 2循环结构与循环结构语句 循环 是在指定的条件下多次重复执行一组语句 1 For Next 2 Do Loop 3 循环嵌套 4 其他辅助控制语句 For循环变量 初值TO终值 Step步长 语句块ExitFor语句块Next循环变量 For循环格式 执行过程 1 将初值赋循环变量 2 判断循环变量值是否小于等于终止值 3 若是 执行循环体 语句块 4 然后将变量增加一个步长 5 重复2 4步骤 6 否则 结束循环 5 2 1For循环 步长省略 默认为1 程序代码 DimI s ForI 1To10step1NextIPrintI s 例1 求1 2 3 4 10之和 分析 重复过程 循环体 s s I初值 终值和增量 1 10 1 初值与终值换位可以吗 循环体的执行次数是多少 输出的I S的值是多少 ForI 1To10执行多少次 s s I ForI 10To1Step 1 5 2 1For循环 For循环变量 初值TO终值 Step步长 语句块ExitFor语句块Next循环变量 DimI sAsIntegerForI 1To10s s INextIPrintI s 例2 求10 分析 重复过程 初值 终值与增量不变 例1 求1 2 3 4 10之和 分析 重复过程 循环体 初值 终值和增量 1 10 1 DimI sAsIntegerForI 1To10s s INextIPrintI s s 1ForI 1To10 ForI 1To10s 1 5 2 1For循环 S1 0S2 0ForI 1To1000S1 S1 INextI 练习1 计算1 1000的奇数和与偶数和方法一 方法二 Step2 ForI 1To1000Step2S2 S2 INextIPrintS1 S2 0 S1 0S2 0ForI 1To1000IfImod20thenS1 S1 IElseS2 S2 IEndIfNextIPrintS1 S2 5 2 1For循环 练习2 输入一个正整数 求各位数字之和 输入正整数k求它的位数用For循环1 位数和步长取k的末位数 求和使k去掉末位数重复以上两步 直到结束在text2中显示结果 5 2 1For循环 k Val Text1 Text l Len Trim Text1 Text Fori 1Tolt kMod10sum sum tk k 10NextText2 Text CStr sum 例5 5 一个从字母 数字组成的字符串中找出所有大写字母并逆序输出的程序 输入原字符串求出串长用For循环1 长度和步长用Mid函数取出每一位 对每个字符进行判断对符合要求的字符采用连接运算组成新字符串重复以上两步 直到结束在text2中显示新串 5 2 1For循环 例 分析下列程序段的输出结果 DimIAsInteger JAsIntegerJ 0ForI 0To10Step2I I 3J J 1NextIPrintI J 注意 初值 终值 步长必须是数值型 步长为正 初值终值 缺省为默认为1 在已知循环次数时使用For循环 循环次数 int 终值 初值 步长 1 组成循环体的语句块可以是一条或多条语句 ExitFor表示当遇到该语句时 退出循环体 执行Next的下一句 在循环体内对循环变量可多次引用 但在循环过程中一般不改变其值 否则影响结果 退出循环后 循环变量保持退出时的值 5 2 1For循环 1 DoWhile循环体Loop 2 D0循环体LoopWhile 3 DoUntil循环体Loop 4 Do循环体LoopUntil 5 2 2Do Loop循环 1 While循环 DoWhile循环体Loop 执行过程 先判断 后执行 先判断循环条件 若为真 执行循环体 再判断循环条件否则 跳过循环体 执行Loop之后语句 5 2 2Do Loop循环 DoWhile循环体Loop DimI sAsIntegerForI 1To10s s INextIPrintI s 例1 求1 2 3 4 10的和 DimI sAsIntegerI 1DoWhileLoopPrintI s s s I I 10 I I 1 I 11 1 循环体执行了几次 2 没有I 1会怎样 3 将Print语句移到Loop的前面结果怎样 4 I先赋值为11 结果如何 1 While循环 5 2 2Do Loop循环 D0循环体LoopWhile 执行过程 先执行 后判断 先执行循环体 再判断循环条件 若为真 继续执行循环体 否则 结束循环 执行Loop之后语句 1 While循环 5 2 2Do Loop循环 D0循环体LoopWhile 例4 修改例3 DimI sAsIntegerI 1DoWhileI 10s s II I 1LoopPrintI s DimI sAsIntegerI 1Dos s II I 1LoopWhileI 10PrintI s 1 循环体执行几次 2 将I先赋值为11 执行结果如何 1 While循环 5 2 2Do Loop循环 DoWhile循环体Loop D0循环体LoopWhile 区别 1 执行顺序不同形式一 先判断 后执行循环体 形式二 先执行循环体 后判断 2 执行次数不同 特殊情况下 形式一 条件不满足 循环体可能一次也不执行形式二 不论条件如何 至少执行一次 1 While循环 5 2 2Do Loop循环 执行过程 先判断 后执行 先判断循环条件 条件为假 执行循环体 然后再判断条件 条件为真 跳过循环体 执行Loop之后语句 DoUntil循环体Loop 2 Until循环 5 2 2Do Loop循环 DoUntil循环体Loop 例5 修改上例 DimI sAsIntegerI 1DoWhileI 10s s II I 1LoopPrintI s DimI sAsIntegerI 1DoUntils s II I 1LoopPrintI s 条件应该如何写出 显示的I S值与上例一样吗 Do循环体LoopUntil I 10 5 2 2Do Loop循环 2 Until循环 几种形式比较 DoWhile循环体Loop While DoUntil循环体Loop Until 区别 While条件为真时执行循环体 否则退出循环Until条件为假时执行循环体 否则退出循环 关系 while和Until可以相互转换 但循环条件取反 5 2 2Do Loop循环 例5 3 用辗转相除法求两自然数m n的最大公约数和最小公倍数 分析 最大公约数 已知两数m n mModn的值为r m n n r 若r0 则重复 否则 循环结束 m为所求的最大公约数 最小公倍数原两个数相乘 再除以最大公约数 5 2 2Do Loop循环 练习3 我国现有人口13亿 按人口年增长率0 8 计算 多少年后我国人口超过26亿 分析计算公式 26 13 1 0 008 n已知 当前人口数量为P 13 年增长率为R 0 008循环条件 当前人口数是否超过26亿若没 计算下一年人口数P P 1 R 年数 1 再判断 5 2 2Do Loop循环 练习4 输入一个正整数n 求最大的k 使得1 1 2 2 k k n成立 循环结构 练习 分析 输入n值判断累加和s n 若是 s加下一个数的平方值重复2 3若否 结束循环由text2输出最后一个累加数k 对吗 循环的嵌套 在一个循环体内又包含了一个完整的循环结构 5 2 3循环嵌套 ForI 1To9ForJ 1ToIs INextJPicture1 PrintNextI 注意 内 外循环变量不能同名外循环必须完全包含内循环 不能出现交叉 分析 用三重循环个位x的可能取值为0 9十位y的可能取值为0 9百位z的可能取值为1 9 看三个位置上的数是否满足如下条件 若满足 即是其中一个解x3 y3 z3 z 100 y 10 x 练习5 求水仙花数 P78 水仙花数是指一个3位数 其各个数字的立方和等于数字本身 5 2 3循环嵌套 1 GoTo语句2 Exit语句 满足循环条件的情况下 提前跳出循环体 结束循环 两种形式 ExitFor ExitDo 作用 无条件的转移到标号或行号指定的语句语法 GoTo 标号 行号 100IfI 100Thens s II I 2GoTo100EndIf 5 2 4其他辅助控制语句 DimIAsInteger IfImod17 0thenprintIendIf ForI 100to200NextI Exitfor 分析 重复工作 判断每个数除17的余数是否为0初值 终值和增量 练习6 求出100 200之间的第一个能被17整除的整数 5 2 4其他辅助控制语句 5 3程序示例 示例1 一个简易的函数计算器程序 P73 首先要对第一个文本框中输入的数据进行合法性判断 是否为空 是否为数字 5 3程序示例 续 示例2 利用牛顿迭代法求方程xex 1 0在x0 0 5附近的一个根 精确到10 7 P78 Xn 1 xn f xn f xn n 0 1 2 3 当 xn 1 xn 时 xn 1为要求的根 示例3 将一个二进制的原码转换成补码 P80 思考题 输入一个十进制整数 输出其原码和反码 5 3程序示例 续
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战
- 人美版绘画课件
- 培训课件自我介绍
- 培训课件开发业务
- 党建面试题题目及答案
- 数字化农业种植基地租赁与智能化改造合同
- 2025年校园心理健康教育培训及咨询服务协议
- 2025年高效车间安全生产设备全面检查与维护服务合同
- HBDSCZ金融区块链技术研发与推广应用合作协议
- 2025年绿色矿业开发采矿权抵押担保技术服务合同
- 2025年教师招聘小学语文真题及答案
- 2025年(完整版)十八项核心制度培训考核试题(含答案)
- KET教学课件新版
- GB/T 16657.2-1996工业控制系统用现场总线第2部分:物理层规范和服务定义
- GA/T 150-2019法医学机械性窒息尸体检验规范
- 《人类行为与社会环境》课件
- 头位难产识别和处理
- (完整版)文献调研报告模板
- 《透视灵魂看人生》-曾仕强
- 浅谈新课标下的高中英语教学
- T∕ACSC 01-2022 辅助生殖医学中心建设标准(高清最新版)
评论
0/150
提交评论