第三章结构化程序设计.ppt
《第三章结构化程序设计.ppt》由会员分享,可在线阅读,更多相关《第三章结构化程序设计.ppt(79页珍藏版)》请在课桌文档上搜索。
1、第3章 FORTRAN结构化程序设计,本章内容,顺序结构程序设计选择结构程序设计循环结构程序设计,结构化程序设计:按照一定的结构形式来设计和编写程序,以便阅读与检查。,顺序结构,选择结构,循环结构,当型循环,直到型循环,3.1 顺序结构程序设计,先上后下,先左后右;即先执行A,再执行B,顺序结构,【例3-1】输入3个气象站5个月(汛期)雨量数据,统计每个气象站的总雨量和平均雨量,计算3个站五月、六月、七月、八月、九月的平均雨量,输出每个气象站每个月的雨量、总雨量和平均雨量,以及五月、六月、七月、八月、九月的平均雨量。,表3-1 1998年主要站汛期雨量统计表,PROGRAM ex06_02IM
2、PLICIT NONEREAL r11,r12,r13,r14,r15,total11,av11REAL r21,r22,r23,r24,r25,total21,av21REAL r31,r32,r33,r34,r35,total31,av31REAL av1,av2,av3,av4,av5WRITE(*,“(28X,5月 6月 7月 8月 9月)”)WRITE(*,“(1X,输入江阴气象站五个月的雨:,)”)READ(*,*)r11,r12,r13,r14,r15WRITE(*,“(1X,输入定波闸气象站五个月的雨量:,)”)READ(*,*)r21,r22,r23,r24,r25,WRIT
3、E(*,“(1X,输入肖山气象站五个月的雨量:,)”)READ(*,*)r31,r32,r33,r34,r35100FORMAT(F5.1,F5.1,F5.1,F5.1,F5.1)total11=r11+r12+r13+r14+r15 av11=total11/5 total21=r21+r22+r23+r24+r25 av21=total21/5 total31=r31+r32+r33+r34+r35 av31=total31/5 av1=(r11+r21+r31)/3 av2=(r12+r22+r32)/3 av3=(r13+r23+r33)/3,av4=(r14+r24+r34)/3 a
4、v5=(r15+r25+r35)/3WRITE(*,“(26X,5月 6月 7月 8月 9月 总雨量 平均雨量)”WRITE(*,200)江阴气象站五个月的雨量:,r11,r12,r13,r14,r15,total11,av11WRITE(*,200)定波闸气象站五个月的雨量:,r21,r22,r23,r24,r25,total21,av21WRITE(*,200)肖山气象站五个月的雨量:,r31,r32,r33,r34,r35,total31,av31200 FORMAT(1X,A22,5(F5.1,2X),F6.1,2X,F7.3)WRITE(*,300)5月,av1,6月,av2,7月,
5、av3,8月,av4,9月,av5,300 FORMAT(1X,A4,平均雨量:,F7.3)END,运行结果:,3.2 选择结构,3.2.1 选择结构简介3.2.2 IF语句 3.2.3 SELECT CASE语句 3.2.4 选择语句的嵌套,3.2.1 选择结构简介依据给定的条件做逻辑判断,再根据判断的结果决定应执行哪种操作选择结构。如:1 输入学生成绩,判定合格与否,输出判定结果。2 已知三个整数A,B,C,输入其值并打印三个数中最大值。3 暴雨预警信号分三级,分别以黄色、橙色、红色表示。(1)暴雨黄色预警信号(2)暴雨橙色预警信号(3)暴雨红色预警信号根据降雨量评判当前预警信号,从而做出
6、不同防御指南。必须使用选择结构程序来解决这类问题,FORTRAN提供了3种典型的块IF结构:(1)单分支(2)双分支(3)多分支,3.2.2 IF语句,(1)单分支块IF结构一般形式为:IF(条件)THENIF块END IF这种块IF结构包括:块IF语句“IF(条件)THEN”。它是块IF结构的入口语句。IF块。它是一个语句序列,由若干条可执行语句组成。END IF语句。它是块IF结构的出口语句。,【例3-2】从键盘输入一个气温值,如果大于35.0,则显示在屏幕上。,(2)双分支块IF结构一般形式为:IF(条件)THENIF块ELSEELSE块END IF,【例3-3】由于大气受到污染,一些地
7、区开始形成酸雨区,酸雨是指PH值小于5.6的雨雪或其他形式的大气降水。通过收集水样测量其PH值,判断它的酸碱性并打印出来。根据题意设计算法并画出程序流程图,如图所示。,(3)多分支块IF结构一般形式为:IF(条件1)THEN块1ELSE IF(条件2)THEN块2ELSE IF(条件3)THEN块3.ELSE IF(条件n)THEN块nELSE块n+1END IF,【例3-4】在气象部门发布的天气预报中小雨、中雨、暴雨等专业术语,它们之间的区别如表所示:,(4)逻辑IF结构逻辑IF语句的一般形式:IF(条件)语句其中“条件”可以是一个合法的逻辑表达式或关系表达式,“语句”是一个合法的可执行语句
8、,且只有一条语句。,【例3-5】已知跃阶函数的数学模型是:,x要求从键盘输入。,CASE结构是一种多路分支选择结构,可有多个分支可供选择。CASE结构的一般形式为:SELECT CASE(选择表达式)CASE(控制表达式1)块1CASE(控制表达式2)块2.CASE(控制表达式n)块nCASE DEFAULT默认块END SELECT,3.2.3 SELECT CASE语句,实质:判断选择表达式的值是否与某一控制表达式的值相匹配。,说明:选择表达式和控制表达式可以为整型、逻辑型或字符型。控制表达式可以是一个不重复的值或一组同类值的列表,如:(1)用逗号分隔的单个值列表。如:CASE(a,b,c
9、,x,y,z),当选择表达式的值为a,b,c,x,y,z之一时,执行相应的语句块。CASE(3,6,9),当选择表达式的值为3,6或9时,执行相应的语句块。(2)用冒号分隔的值的范围。如:CASE(a:g),当选择表达式的值落入ag范围内时,执行相应的语句块。CASE(5:10),当选择表达式的值落入510范围内时,执行相应的语句块。CASE(10:),当选择表达式的值大于或等于10时,执行相应的语句块。CASE(:10),当选择表达式的值小于或等于10时,执行相应的语句块。,【例3-6】根据风对地上物体所引起的现象将风的大小分为13个等级,称为风力等级,以 012等级数字记载,如下表所示:,
10、现对所输入的风速进行分类并输出。,在一个块IF结构中都可以完整地包含一个(或多个)块IF结构,即构成块IF的嵌套结构。它的结构为:,3.2.4 选择语句的嵌套,当嵌套层次过多时,往往一时难以找到同一层的块IF中的各语句,一般可按以下方法确定:,(1)从最内层的块IF语句开始,向下找到离它最近的END IF语句,将它们用线括起来,这就是同一层次的块IF。(2)由内向外重复这一个过程,直到遇见最外层块IF语句和END IF语句为止。(3)在书写嵌套分支结构时采取缩进方式进行程序书写,程序的嵌套层次就容易确定。,【例3-7】求解当系数a,b,c为不同情况下的一元二次方程根。N-S图如下:,【例3-8
11、】已知U,V风速,判断风向:,U0;V0西南风,U0;V0西北风,U0东南风,U0;V0东北风,program ex0308real u,vread*,u,vif(u0.0)then if(v0.0)then!u0,v0 print*,西南风 else if(v0,v0,v=0 print*,西风 end ifelse if(u0.0)then!u0 print*,东南风 else if(v0.0)then!u0,v0 print*,东北风 else!u0,v=0 print*,东风 end if,else if(v0.0)then!u=0,v0 print*,南风 else if(v0.0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 结构 程序设计

链接地址:https://www.desk33.com/p-259657.html