一級(jí)基礎(chǔ)科目(一)輔導(dǎo)---輸入輸出語(yǔ)句

字號(hào):

五、輸入輸出語(yǔ)句
     (一)表控輸入輸出
     表控輸入輸出語(yǔ)句是一種隱含格式的輸入輸出語(yǔ)句,其格式由程序編譯系統(tǒng)提供,在程序語(yǔ)句中不予表示。
     1.表控輸出語(yǔ)句
     FORTRAN 77表控輸出語(yǔ)句有兩種方式:
     PRINT*,輸出量表
     WRITE(*,*)輸出量表
     這兩種表控輸出語(yǔ)句的作用是相同的,但一般微機(jī)上的FORTRAN 77子集不提供PRINT 語(yǔ)句,所以通常使用WRITE語(yǔ)句。
     2.表控輸入
     FORTRAN 77表控輸入語(yǔ)句有兩種型式:
     READ*,輸入量表
     READ(*,*)輸入量表
     表控輸入又稱為自由格式輸入。表控輸入語(yǔ)句要求用戶在隱含的輸入設(shè)備(通常是鍵盤)上輸入所需的數(shù)據(jù),在輸人數(shù)據(jù)時(shí),各數(shù)據(jù)之間用逗號(hào)或空格分隔。
     (二)格式輸入輸出
     1.格式輸出數(shù)據(jù)語(yǔ)句WRITE語(yǔ)句和FORMAT語(yǔ)句
     WRITE語(yǔ)句的一般形式為:WRITE(u,f)輸出量表
     其中,u為部件說(shuō)明符,用以指出在哪個(gè)設(shè)備上進(jìn)行輸出,通常也稱為通道號(hào),當(dāng)u為記號(hào)*時(shí),表示在顯示器(標(biāo)準(zhǔn)輸出設(shè)備)上進(jìn)行輸出。f為格式說(shuō)明,它通常是一個(gè)格式語(yǔ)句的標(biāo)號(hào),用以指出輸出數(shù)據(jù)所采用的格式。
     格式語(yǔ)句的一般形式為:
     標(biāo)號(hào) FORMAT(格式說(shuō)明)
     例如:WRITE(*,10)A,B,A*B
     10 FORMAT(1X,F(xiàn)6.2,F(xiàn)7.3,F(xiàn)10.4)
     FORMAT語(yǔ)句中,第一個(gè)“1X’’稱為縱向控制符,它表示前進(jìn)一空格后再輸出后面的數(shù)據(jù),后面的三個(gè)項(xiàng)分別說(shuō)明了三個(gè)實(shí)型數(shù)據(jù)輸出的,稱為格式編輯符。FORTRAN 77允許在WRITE語(yǔ)句中直接指定輸出格式,從而可以省略格式語(yǔ)句FORMAT。例如,上面的輸出語(yǔ)句與格式語(yǔ)句可以合并成一個(gè),即:WRITE(x,(1X,F(xiàn)6.2,F(xiàn)7.3,F(xiàn)10.4)’)A,B,A*B
     2.格式編輯符
     FORTRAN常用的格式符有十幾種,詳細(xì)可參照任何一本FORTRAN教材或?qū)S檬謨?cè)。
    (三)隱循環(huán)的輸入輸出
     數(shù)組元素的輸入輸出可以采用循環(huán)方式實(shí)現(xiàn)。例如:
     DIMENSIONX(20)
     DO 10 I=1,20
     20 READ*,X(I)
     程序段執(zhí)行時(shí)進(jìn)行20次循環(huán),每次輸入1個(gè)數(shù)據(jù)。這個(gè)輸入程序段可以改寫如下:
     DIMENSIONX(20)
     READ*,(X(1),I=1,20)
     其中第2句就是隱循環(huán)的輸入語(yǔ)句。循環(huán)控制變量I的初值為1,終值為20,步長(zhǎng)而予以省略。隱循環(huán)語(yǔ)句的作用與DO語(yǔ)句是相同的;但使用隱循環(huán)語(yǔ)句時(shí),20個(gè)數(shù)據(jù)允許一次性輸入,當(dāng)然,數(shù)據(jù)與數(shù)據(jù)之間要用空格符或逗號(hào)區(qū)別開(kāi)來(lái)。 隱循環(huán)語(yǔ)句也用于輸出語(yǔ)句,也可使用多重循環(huán)。例如
     DIMENSIONY(10,6)
     READ(*,*) ((Y(I,J),J=1,6),I=1,10)
     WRITE(*,5) ((Y(I,J),J=1,6),I=1,10)
     5 FORMAT(1X,6F10.2)
     運(yùn)行程序段時(shí),首先讀人60個(gè)數(shù)據(jù),Y(1,1),Y(1,2),……,Y(1,6),Y(2,
     1),Y(2,2),……,Y(2,6),……,Y(10,1),Y(10,2),……,Y(10,6),
     然后輸出60個(gè)數(shù)據(jù),每行輸出6個(gè)數(shù)據(jù),數(shù)據(jù)的排列順序與輸入時(shí)相同。