- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]fortran程序设计第5章
FORTRAN语言--FORTRAN 77结构化程序设计 讲师:徐红波 Email: x_h_b@ 第五章 循环结构的实现 重复执行一组指令称为循环操作。在程序中存在两类循环:无条件循环和有条件循环。无条件循环是无休止地执行一个程序段,而有条件循环是在满足一定条件时才执行循环。 经常会遇到循环类型的问题,例如需要对全班学生求平均成绩,求n的阶乘,求 n个数的和等都需要用到循环处理的方法。 5.1 用GOTO语句实现循环 GOTO语句的形式: GOTO 语句标号 例如:“GOTO 10”表示流程转去标号为10的语句行继续执行。由于GOTO语句破坏了语句顺序执行的正常状态,不符合结构化程序设计原则,因此一般不提倡使用GOTO语句。只有在一个基本结构内部可以使用GOTO语句。利用GOTO语句可以实现循环处理。 例:读入学生的学号和成绩并且打印 无条件循环: 10 READ *, NUM, GRADE PRINT *, NUM, GRADE GOTO 10 有条件循环: N=1 10 READ *, NUM, GRADE PRINT *, NUM, GRADE N=N+1 IF (N .LE. 5) GOTO 10 5.2 用DO语句实现循环 当需要执行的循环次数为已知时用DO语句实现循环比较方便。例如,上节读5个学生的学号和成绩,要执行READ语句和PRINT语句5次。可以改用DO语句实现: DO 10, N=1, 5, 1 READ *, NUM, GRADE 10 PRINT *, NUM, GRADE 5.2.1 循环语句(DO语句)和循环次数的计算 DO循环由一个DO语句和循环体组成: DO 10, I=1, 10, 1 (循环语句) J=I*I (循环体) 10 PRINT *, I, J DO语句的一般形式为: DO 标号 [,] 循环变量= 初值, 终值[, 步长] s v = e1, e2, e3 循环次数可以从循环初值、终值和步长计算出来: r=INT((e2-e1+e3)/e3) 例如:DO 10, I=1, 10, 2 DO 20, N=1, 5 DO 100, X=1.2, 2.4, 0.2 DO 150, T=2.5*2, 50.0/2.0, 0.5 DO 200, M=1.5, 12.5, 1.5 5.2.2 循环执行过程 循环执行过程执行以下步骤: 计算表达式e1,e2,e3的值,并将它们转换成循环变量的类型。 将初值e1赋予循环变量v。 计算应循环的次数r。 检查循环次数,若r=0或r0,则跳过循环体,执行循环终端语句下面一个执行语句。如果r0,则执行循环体。 执行终端语句时循环变量v增值,即v=v+e3。 循环次数r减1。 返回步骤4,重复执行步骤4、5、6、7。 从以上流程图和上述步骤可知,终端语句的作用,除了完成该语句本身的功能,还有两个作用:(1)使循环变量v增值e3,(2)使循环次数r减1。 5.2.3 循环终端语句和继续语句(CONTINUE语句) 循环终端语句可以是除了GOTO、块IF、ELSE、ELSE IF、END IF、END、STOP和RETURN语句之外的任一可执行语句,如打印语句、赋值语句、输入语句等都可以作为终端语句 非执行语句不能作为循环的终端语句 为了使循环的起止范围清晰,使终端语句与一般执行语句所区别,用CONTINUE语句作为终端语句。 继续语句CONTINUE的形式为: CONTINUE 例如: READ *, A, B CONTINUE PRINT *, A, B DO 20, I=1, 10, 2 PRINT *, I 20 CONTINUE [例5.1]求5! INTEGER FACT FACT=1 DO 10, I=1, 5 FACT=FACE*I 10 CONTINUE PRINT *, FACT END [例5.2]求1!+2!+…+N! READ *, N SUM=0.0 FACT=1.0 DO 100, I=1, N FACT=FACE*I SUM=SUM+FACT 100 CON
您可能关注的文档
- [工学]9矩阵位移法.ppt
- [工学]9章-相律与相图1.ppt
- [工学]ABB DCS 功能码 简述.ppt
- [工学]access选择.doc
- [工学]ABIS、、A口培训文档.ppt
- [工学]ACM简单题二.ppt
- [工学]8023网络设计与安装手册整理版.pdf
- [工学]Ajax 教材详解.ppt
- [工学]ACM算法 计算几何基础.ppt
- [工学]ANSYS 教程.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)