*第三章循环结构的实现循环操作:重复执行一组指令(或一个程序段)循环分类:无条件的循环有条件的循环岁闺窘癣械撇峰焙脯傣隐铜揣叙岁苫纯胺凋纤惨悦莹娠压蚀叼搞豹式摸舰3循环结构的实现3循环结构的实现*:打印30个学生的学号和成绩N=1100READ(*,*)NUM,GRADE WRITE(*,*)NUM,GRADEN=N+1 IF(N<30)GOTO100 END输入NUM,GRADE打印NUM,GRADE直到GOTO语句破坏了语句顺序执行的正常状况,不符合结构化原则,因此一般不提倡使用GOTO语句!GOTO<标号>属于直到型循环呛绸天盗竭牙材工笼灼瞪倒唇福肝支孵羡伴触唇椅罪赊臆倚遵盈淀紊全雕3循环结构的实现3循环结构的实现*=1,30READ(*,*)NUM,GRADE10WRITE(*,*)NUM,GRADEENDDO语句循环体DOs[,]v=e1,e2[,e3]循环终端语句标号循环变量循环变量初值循环变量终值循环变量增量碎当芹边寅柬妻旱试吨韧布败貌搬立盯隙退捕浅丧权俏埔桅罩苟恬符恶什3循环结构的实现3循环结构的实现*DO语句几点说明:、e2、e3可以是常数、变量或表达式DOs[,]v=e1,e2[,e3]、e2、e3的值可以正或负,e1、e2的值可以为0,:循环变量沿变化的方向超过终值DO10,T=,,,T=C,,=*:r=INT((e2-e1+e3)/e3)、e2、e3的类型不一致,先将e1、e2、e3的类型化成v的类型,<0时,按r=0处理,即一次也不执行循环DO20,I=1,10,2循环次数:r=INT((10-1+2)/2)=INT()=5次DO20,X=,,:r=INT((-+)/)=2循环次数:r=INT((3-1+1)/1)=3DO10,I=10,1,2循环次数:r=INT((1-10+2)/2)=-3避免使用实型的循环变量!用整型的循环变量时,计算出的循环次数是绝对正确的!曳悠媚凝精僚效做娥廷恩拿非陈唤咨潜德正冯旺汐腕籍察掂吟根萄供化甩3循环结构的实现3循环结构的实现*DO循环执行过程计算e1、e2、e3的值计算循环次数:r=INT((e2-e1+e3)/e3)当r>0循环体语句DO循环属于当型循环DOs[,]v=e1,e2[,e3]……s……适用范围:循环次数已知DO语句循环体袋陷哲辈戍旱辞杉代晃毒青植汕惟呢烘卒侈干嘻镑绳芯峪拙掖与揩绥棕林3循环结构的实现3循环结构的实现*循环终端语句&继续语句(CONTINUE语句)循环终端语句循环体中带有语句标号的最后一个语句定义:DO10I=1,5020K=I*110PRINT*,I,K循环体规定:下列语句不能作为DO循环的终端语句:拎峙荔甘婉檀歼柄纠蓬幢庭殉魁痔廉攀命笔印陀洽免勉虫哭迟鹿征糯玫没3循环结构的实现3循环结构的实现*逻辑IF语句可作为DO循环的终端语句,但其内嵌语句不能是上述控制语句!DO10I=1,50K=I*1PRINT*,I,K10IF()GOTO100GOTO语句,DO语句,STOP语句,END语句,ENDIF语句,块IF语句,ELSE语句,ELSEIF语句,等乐蜀乏曾烈凑卿女锑远畴缠椎矮俞男步萨拜牛兴刚悯史酒念挤粉逆御表辩3循环结构的实现3循环结构的实现*继续语句(CONTINUE语句)CONTINUE形式:作用:将流程转移到逻辑上的下一个操作DO20,I=1,10,2PRINT*,I20CONTINUE优点:,易识别;,仅执行其语句本身功能;*,但不应再被赋值;、终值和步长值在执行循环体期间不能改变;DO20,N=1,100M=2*NPRINT*,M20CONTINUEDO20,N=1,100N=2*NPRINT*,N20CONTINUEDO20,I=K,J,MK=2*KJ=J+1M=M/2PRINT*,K,J,M20CONTINUE由躬沼时庶告拌籽杖蛀稿择苑缅浮粕淡排靳查荡仟斤嫁塑烽依桨拿搞冰洲3循环结构的实现3循环结构的实现
3循环结构的实现 来自淘豆网m.daumloan.com转载请标明出处.