- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 选择结构程序设计 逻辑IF语句 块IF结构 选择结构的嵌套 用ELSE IF语句实现多路分支 程序举例 * 逻辑IF语句 逻辑IF语句的一般形式为:IF (逻辑表达式) 内嵌语句 逻辑IF语句的执行过程如下:首先计算圆括号内的逻辑表达式的值(即判断条件),如果逻辑表达式的值为真(即条件成立),则执行内嵌语句,然后继续执行后面的语句;如果逻辑表达式的值为假(即条件不成立),则不执行内嵌语句,直接执行后面的语句。 例题5.1 使用逻辑IF语句时应注意的问题: 逻辑IF语句中的逻辑表达式一定要用一对圆括号括起来; 逻辑IF语句中的内嵌语句只能是单个的可执行语句,即内嵌语句不能是非执行语句,也不能有多于一个可执行语句; 在使用逻辑IF语句时,一定要注意逻辑表达式的正确写法,特别是在使用多个逻辑IF语句时更要注意。 例题5.2 块IF结构 逻辑IF语句的局限性: 因为在逻辑IF语句中其内嵌语句只允许有一个,所以当逻辑表达式值为真时需要作的操作不能用一个语句来完成,需要多个语句时,逻辑IF语句就无法实现了; 当要实现多个分支的选择结构时,如果用多个逻辑IF语句实现,则每一个逻辑IF语句中的逻辑表达式比较复杂。 块IF结构的一般形式为: 块IF结构的执行过程如下: 首先执行块IF语句,计算其中的逻辑表达式值; 如果逻辑表达式值为真,则执行THEN块中的各可执行语句,否则执行ELSE块中的各可执行语句; 无论是执行完THEN块还是完ELSE块,最后都要转到END IF语句,从而结束该块IF结构的执行。 使用块IF结构时应注意的问题: 块IF语句是块IF结构的第一个语句,其中的逻辑表达式必须用一对圆括号括起来; THEN块可以由若干个可执行语句组成,但一行上只能写一个语句,语句太长时可以使用继续行; ELSE语句必须单独占一行; ELSE块也是由若干个可执行语句组成,但一行上只能写一个语句,语句太长时可以使用继续行; END IF语句是块IF结构的最后一个语句,必须单独占一行,它表示块IF结构的结束; 在一个块IF结构中,块IF语句与END IF语句是必须的,而THEN块、ELSE语句、ELSE块可以根据实际情况省略。 逻辑IF语句与块IF结构中的块IF语句的区别: 块IF语句只是块IF结构中的第一个语句,它不能单独使用,至少应有一个END IF语句与它相对应;而逻辑IF语句是单独执行完成一种选择结构的功能。 块IF结构中的逻辑表达式后面要有THEN;而逻辑IF语句中的逻辑表达式后面不能有THEN。 块IF语句中的THEN后面不能再有别的语句,所有的语句都包括在THEN块中;而逻辑IF语句中包括一个内嵌语句,但只能有一个语句。 用逻辑IF语句实现的选择功能,一定可以用块IF结构来实现;但一般的块IF结构所能完成的选择功能,不一定都能用一个逻辑IF语句来实现。 例题5.3 选择结构的嵌套 块IF结构嵌套的一般形式为: 例题5.2 使用块IF结构的嵌套要注意以下几点: 每一层的块IF结构都必须以块IF语句开始,以END IF语句结束。另外,为了使层次结构清晰,书写或输入源程序时应采用缩进规则,即内存的块IF结构比外层的块IF结构缩进若干格,这样也容易检查在块IF结构中是否缺少了END IF语句。 每一层中的块IF结构必须完全包含在其外层块IF结构的THEN块或ELSE块中,不允许出现交叉。 可以从内层的块IF结构中转到外层块IF结构中的包含该内层块IF结构的THEN块或ELSE块。但不允许从外层块IF结构中转到内层块IF结构中;也不允许在同一层的块IF结构中从THEN块转到ELSE块,或从ELSE块转到THEN块。 例题5.2 N-S流程图 用ELSE IF语句实现多路分支 用ELSE IF实现多路分支的选择结构的一般形式: 例题5.4 使用ELSE IF语句时应注意的问题: 例题5.5 使用ELSE IF语句时应注意的问题 ELSE IF语句相当于将ELSE语句与下一行的块IF语句连接成一个语句。 在用块IF结构实现多路分支时,每一个块IF语句必须有一个END IF语句与之相对应。但ELSE IF语句不需要END IF语句与之相对应。 在一个块IF结构中,可以有多个ELSE IF语句,但只能有一个ELSE语句,且该ELSE语句与块IF结构中的最后一个ELSE IF语句相配对;在一个块IF结构中,也可以只有ELSE IF语句,而没有ELSE语句,此时ELSE块为一个空块。 特别要强调的是,在利用块IF结构的嵌套或者利用ELSE IF语句处理多路分支选择的时候,块IF语句或ELSE IF语句中的条件必须写对,否则会出现逻辑错误,程序运行后将得到错误的结果。 程序举例 例题5.6 由键盘输入三个整数A、B、C,然后按从小到大的顺
原创力文档


文档评论(0)