FORTRAN语言第3章(共8章).pptVIP

  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结构,也可以是另一些形态、功能不同的结构,如CASE结构、DO结构等。前提是必须将整个结构完整地嵌入到IF结构的某一个语句块中,不允许被嵌入结构的一部分在一个语句块中,另一部分在别的语句块或是不在被嵌入的IF结构中,即被嵌入的任何结构不允许跨越两个独立的语句块。 二、块IF的嵌套 第二节 块IF选择结构 IF语句嵌套的形式可以表示如下: [构造名1:]IF(逻辑表达式1) THEN [构造名2:]IF(逻辑表达式2) THEN [构造名3:]IF(逻辑表达式3) THEN …… ENDIF[构造名3] …… ENDIF[构造名2] …… ELSE …… ENDIF[构造名1] 第二节 块IF选择结构  一个嵌套分支结构可使用若干个块IF语句,相应就有若干个ENDIF语句,每个块IF语句还可能使用一些ELSE IF语句、ELSE语句,这就可能构成一个复杂的IF-ELSEIF-THEN-ELSE结构。当嵌套层次过多时,往往一时难以找到同一层的块IF中的各语句,一般可按以下方法确定: (1)从最内层的块IF语句开始,向下找到离它最近的ENDIF语句,将它们用线括起来,这就是同一层次的块IF。 (2)由内向外重复这一个过程,直到遇见最外层块IF语句和ENDIF语句为止。 (3)在书写嵌套分支结构时采取缩进方式进行程序书写,程序的嵌套层次就容易确定。 例、 给定一个年份,判断是否为闰年。 分析:闰年的判断条件是能被4整除,但不能被100整除或能被100整除且能被400整除。 Y不能被4整除 T F 打印Y不是闰年 Y不能被100整除 T 打印Y 是闰年 F Y能被400整除 打印Y 是闰年 T F 打印Y不是闰年 例、 给定一个年份,判断是否为闰年。 分析:闰年的判断条件是能被4整除,但不能被100整除或能被100整除且能被400整除。 If ( MOD(y, 4) == 0) Then If ( MOD(y ,100) == 0) Then If( MOD(y,400) == 0) Then a = “TRUE ” !既能被100又能被400整除的数 Else a = “FALSE “ !能被100整除但不能被400整除的数 End If Else a = “TRUE“ !能被4整除但不能被100整除的数 End If Else a = “FALSE“ !不能被4,100和400整除的数 End If 使用块IF嵌套应注意以下几点: 1、不允许从块IF语句外控制转移到块IF语句的语句体内的任意位置。 2、允许通过控制转移语句(如GOTO语句)从块IF语句内控制转移到块IF语句外。 3、在嵌套的块IF语句中,内层的块IF不能和外层的块IF相互交叉。 第二节 块IF选择结构 IF结构除了可以实现二义判断之外,还可以实现多重判断。此时,IF结构中需加入新的元素----ELSEIF语句。 方法1:转化为单分支,逻辑IF语句并列 方法2:逐次二分,转化为块IF结构嵌套 例:将百分制转换成等级制,根据成绩x输出 A: x=90 B: 80=x90 C: 70=x80 D: 60=x70        E: x60 第二节 块IF选择结构 方法1: WRITE(*,*)请输入成绩:“ READ(*,*) X If (X = 90) WRITE(*,*) 优秀! If (X = 80 . AND. X90) WRITE(*,*) 良好! If( X = 70 .AND. X80) WRITE(*,*) 中等! If (X = 60 .AND. X70) WRITE(*,*) 及格! If (X 60) WRITE(*,*) “不及格! 上述代码段中有5个IF语句。一个学生的得分只能是上述5种情况当中的一种,但程序仍然要做5次判断,所以算法效率较低。下面用ELSEIF块重写上述代码段。 第二节 块IF选择结构 方法2:

文档评论(0)

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

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

1亿VIP精品文档

相关文档