循环结构的实现.ppt
《循环结构的实现.ppt》由会员分享,可在线阅读,更多相关《循环结构的实现.ppt(37页珍藏版)》请在三一办公上搜索。
1、1,第三章 循环结构的实现,循环操作:,重复执行一组指令(或一个程序段),循环分类:,2,3.1 循环的概念,例:打印30个学生的学号和成绩,N=1 100 READ(*,*)NUM,GRADEWRITE(*,*)NUM,GRADE N=N+1IF(N30)GOTO 100END,GOTO语句破坏了语句顺序执行的正常状况,不符合结构化原则,因此一般不提倡使用GOTO语句!,属于直到型循环,3,3.2 DO循环结构,DO 10 N=1,30 READ(*,*)NUM,GRADE 10 WRITE(*,*)NUM,GRADE END,DO s,v=e1,e2,e3,4,DO语句几点说明:,1.e1
2、、e2、e3可以是常数、变量或表达式,DO s,v=e1,e2,e3,2.e1、e2、e3的值可以正或负,e1、e2的值可以为0,e3的值不应为0,3.脱离循环的条件:循环变量沿变化的方向超过终值,DO 10,T=5.0,25.0,0.5,5,4.循环次数计算公式为:r=INT(e2-e1+e3)/e3),5.如果v的类型和 e1、e2、e3的类型不一致,先将e1、e2、e3的类型化成v的类型,然后处理,6.如果计算出循环次数 r0 时,按 r=0 处理,即一次也不执行循环,DO 20,I=1,10,2,循环次数:r=INT(10-1+2)/2),=INT(5.5)=5次,DO 20,X=1.
3、5,3.6,1.2,循环次数:r=INT(3.6-1.5+1.2)/1.2)=2,循环次数:r=INT(3-1+1)/1)=3,DO 10,I=10,1,2,循环次数:r=INT(1-10+2)/2)=-3,避免使用实型的循环变量!用整型的循环变量时,计算出的循环次数是绝对正确的!,6,DO 循环执行过程,DO循环属于当型循环,DO s,v=e1,e2,e3 s,适用范围:循环次数已知,7,循环终端语句&继续语句(CONTINUE语句),循环终端语句,循环体中带有语句标号的最后一个语句,定义:,DO 10 I=1,50 20 K=I*110 PRINT*,I,K,规定:,下列语句不能作为DO循
4、环的终端语句:,8,逻辑IF语句可作为DO循环的终端语句,但其内嵌语句不能是上述控制语句!,DO 10 I=1,50 K=I*1 PRINT*,I,K 10 IF(K.GT.500)GOTO 100,9,继续语句(CONTINUE语句),CONTINUE,形式:,作用:,将流程转移到逻辑上的下一个操作,DO 20,I=1,10,2 PRINT*,I 20 CONTINUE,优点:,.循环范围清晰,易识别;,.使一般可执行语句不再作为终端语句,仅执行其语句本身功能;,.不用记哪些语句不能作终端语句,10,DO 循环的一些规定,1.循环变量可以在循环体中被引用,但不应再被赋值;,.循环变量的初值、
5、终值和步长值在执行循环体期间不能改变;,DO 20,N=1,100 M=2*N PRINT*,M 20 CONTINUE,DO 20,N=1,100 N=2*N PRINT*,N 20 CONTINUE,DO 20,I=K,J,M K=2*K J=J+1 M=M/2 PRINT*,K,J,M 20 CONTINUE,11,3.可以用转移语句从循环体内转到循环体外,也可以在循环体内转移,但不允许从循环外转到循环内;,4.正常出口&非正常出口;,DO 10,I=1,100 IF(I*I.GE.500)GOTO 100 10 CONTINUE 100 PRINT*,I,I*I,非正常出口,正常出口,
6、DO WHILE循环(当型循环),do while(e)blocklabel term_stmt,e为逻辑表达式(或关系表达式),DO WHILE循环的执行1.计算e的值2.若e为真,执行循环体 若e为假,不执行,转去执行ENDO后的语句,13,*统计平均成绩integer countsum=0.0count=0read(*,*)scoredo while(score.ge.0.0)sum=sum+score count=count+1 read(*,*)score enddoaver=sum/countwrite(*,*)count=,countwrite(*,*)average=,aver
7、end,14,*辗转相除求最大公约数integer m,n,r,tread(*,*)m,nif(m.lt.n)then t=m m=n n=tend ifr=mod(m,n)do while(r.ne.0)m=n n=r r=mod(m,n)enddowrite(*,*)The greatest,common divisor is,nend,15,DO 循环的嵌套(多重循环),一个循环体内又完整的包含另一个循环结构,注意事项:,1.嵌套循环的各层不允许使用同一个变量名作为循环控制变量;,DO 20 I=1,5 DO 10 I=2,10,2 10 CONTINUE 20 CONTINUE,16,
8、3.嵌套DO循环中,可以共用一个循环终端语句;,2.对于任何形式的循环,都不允许循环的交叉;,DO 10 I=1,10 DO 20 J=0,20,2 20 CONTINUE10 CONTINUE,DO 10 I=1,10 DO 10 J=0,20,2 10 CONTINUE,4.可以从内层循环根据需要将控制转到外层循环,但不允许从外层循环将控制转到内层循环,17,C打印九九表do 10 i=1,9 do 20 j=1,9 k=i*j write(*,*)i,*,j,=,k20 continue write(*,*)10continueend,C百钱买百鸡C100元钱买100只鸡C公鸡5元/只C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 循环 结构 实现
链接地址:https://www.31ppt.com/p-5349430.html