信息学奥赛培训材料.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分支程序设计 一、 IF 语句的嵌套 在 if 语句中,如果 then 子句或 else 子句仍是一个 if 语句, 则称为 if 语句的嵌套。 例 1 计算下列函数 Y=1 (x0) =0 (x=0) =-1(x0) 分析:根据输入的 x 值,先分成 x0 与 x ≤0两种情况,然后对于情况 x ≤0,再区分 x 是 小于 0,还是等于 0。 源程序如下 : program ex; var x:real; y:integer; begin wrtie(Input x:);readln(x); if x0 then y:=1 {x0 时, y 的值为 1 } else {x ≤0时} if x=0 then y:=0 else y:=-1; writeln(x=,x:6:2,y=,y); end. 显然,以上的程序中,在 then 子句中嵌套了一个Ⅱ型 if 语句。当然程序也可以写成如 下形式: program ex; var x:real;y:integer; begin wrtie(Input x:);readln(x); if x=0 then if x0 then y:=1 else y:=0 else y=-1; writeln(x=,x:6:2,y=,y); end. 但是对于本题,下面的程序是不对的。 y:=0; if x=0 then if x0 then y:=1 else y:=-1; 明显,从此人的程序书写格式可以看出,他想让 else 与第一个 if 配对,而事实上,这 是错的。因为 pascal 规定: else 与它上面的距它最近的 then 配对 ,因此以上程序段的逻辑意 义就与题义不符。 要使上程序段中 esle 与第一个 then 配对 ,应将程序段修改为: y:=0; 或者 y:=0; if x=0 if x=0 then if x0 then then y:=1 begin else if x0 then Y:=1; else y:=-1; end else Y:=-1; 二、 case语句 上面我们知道可以用嵌套的 if 语句实现多分支的选择结构。但是如果分支越来越多时, 用嵌套的 if 语句实现多分支就显得繁杂。当多分支选择的各个条件由同一个表达式的不同 结果值决定时,可以用 case语句实现。它的选择过程,很象一个多路开关,即由 case语句 的选择表达式的值, 决定切换至哪一语句去工作。 因此在分支结构程序设计中, 它是一种强 有力的手段。在实现多路径分支控制时,用 case 对某些问题的处理和设计,比用

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档