注冊(cè)巖土工程師基礎(chǔ)知識(shí)點(diǎn):DO循環(huán)的有關(guān)規(guī)定

字號(hào):

-
    (1)可以用轉(zhuǎn)移控制語(yǔ)句使流程從循環(huán)體內(nèi)轉(zhuǎn)移到循環(huán)體外,但不允許從循環(huán)體外轉(zhuǎn)到循環(huán)體內(nèi)。如下圖7.3.1所示。
    圖7.3.1
    (2)循環(huán)控制變量在循環(huán)體內(nèi)不能再被賦以新值。
    如:
    DO 10 I=1,10
    I=3*I
    10 WRITE(*,*)I
    是不允許的。
    (3)當(dāng)循環(huán)重復(fù)次數(shù)為零時(shí),不執(zhí)行循環(huán)體。如:
    DO 4 J=4,2,1
    4 WRITE(*,100)
    6 WRITR(*,200)
    S
    100 FORMAT(2X,’******’)
    200 FORMAT(2X,’######’)
    END
    程序輸出結(jié)果為: ######
    (4)IF塊、ELSE IF塊、ELSE塊可以包含DO語(yǔ)句,但DO循環(huán)的范圍必須整個(gè)部分被分別包括在IF塊、ELSE IF塊、ELSE塊內(nèi)。
    如:
    S=0
    DO 10 I=1,100
    T=1.0
    READ(*,*)N
    IF(N.GT.0)THEN
    DO 20 K=1,N
    20 T=T*K
    ELSE
    T=N
    END IF
    10 S=S+T
    WRITE(*,*)S
    END
    以上程序就是輸入100個(gè)整數(shù),要求計(jì)算其中正數(shù)的階乘,并求出它們和輸入的全部負(fù)數(shù)之和。
    (5)CONTINUE語(yǔ)句。
    許多可執(zhí)行語(yǔ)句可以作為DO循環(huán)的終端語(yǔ)句,但GOTO語(yǔ)句、塊IF、ELSE、ELSEIF、END IF、算術(shù)IF、END等不能作為循環(huán)的終端語(yǔ)句。為了使流程引向它的下一個(gè)語(yǔ)句繼續(xù)執(zhí)行,可以采用CONTINUE語(yǔ)句,它稱為繼續(xù)語(yǔ)句或空語(yǔ)句,是一個(gè)可執(zhí)行語(yǔ)句,但不進(jìn)行任何操作。如求20!,可如下編程:
    DOUBLE PRECISION C
    C=1.0
    DO 10 N=2.20
    C=C*N
    10 CONTINUE
    WRITE (*,100) C
    100 FORMAT(2X,’C=’,D18.12)
    END