五、輸入輸出語旬
(一)表控輸入輸出
表控輸入輸出語句是一種隱含格式的輸入輸出語句,其格式由程序編譯系統(tǒng)提供,在 程序語句中不予表示。
1.表控輸出語句
FORTRAN 77表控輸出語句有兩種方式:
PRINT*,輸出量表
WRITE (*,*)輸出量表
這兩種表控輸出語句的作用是相同的,但一般微機上的FORTRAN 77子集不提供PRINT 語句,所以通常使用WRITE 語句。
2.表控輸入
FORTRAN 77表控輸入語句有兩種型式:
READ*,輸入量表
READ (*,*)輸入量表
表控輸入又稱為自由格式輸入。表控輸入語句要求用戶在隱含的輸入設(shè)備(通常是鍵 盤)上輸入所需的數(shù)據(jù),在輸入數(shù)據(jù)時,各數(shù)據(jù)之間用逗號或空格分隔。
(二)格式輸入輸出
1.格式輸出數(shù)據(jù)語句WRITE語句和FORMAT語句
WRITE語句的一般形式為:
WRITE (u, f)輸出量表
其中, u為部件說明符,用以指出在哪個設(shè)備上進行輸出,通常也稱為通道號,當U為記號*時,表示在顯示器(標準輸出設(shè)備)上進行輸出。f為格式說明,它通常是一個格式語句的標號,用以指出輸出數(shù)據(jù)所采用的格式。
格式語句的一般形式為:
標號FORMAT (格式說明)
例如:
WRITE (*, 10) A, B, A*B
10 FORMAT (lX, F6.2, F7.3, F10.4)
FORMAT語句中,第一個"1X"稱為縱向控制符,它表示前進一空格后再輸出后面的數(shù) 據(jù),后面的三個項分別說明了三個實型數(shù)據(jù)輸出的,稱為格式編輯符。
FORTRAN 77也允許在WRITE語句中直接指定輸出格式,從而可以省略格式語句 FORMAT。例如,上面的輸出語句與格式語句可以合并成一個,即:
WRITE (*, I (1X , F6. 2, F7. 3, F10.4) ') A, B, A*B
2.格式編輯符 FORTRAN常用的格式符有十幾種,詳細可參照任何一本FORTRAN教材或?qū)S糜趦浴?BR> (三)隱循環(huán)的輸入輸出
數(shù)組元素的輸入輸出可以采用循環(huán)方式實現(xiàn)。 例如:
DIMENSION X (20)
DO 10 1= 1, 20
20 READ*, X (I)
程序段執(zhí)行時進行20次循環(huán),每次輸入1個數(shù)據(jù)。這個輸入程序段可以改寫如下: DIMENSION X (20)
READ*, (X (I), I = 1, 20)
其中第2句就是隱循環(huán)的輸入語句。循環(huán)控制變量I的初值為1,終值為20,步長為1而 予以省略。隱循環(huán)語句的作用與DO語句是相同的;但使用隱循環(huán)語句時, 20個數(shù)據(jù)允 許一次性輸入,當然,數(shù)據(jù)與數(shù)據(jù)之間要用空格符或逗號區(qū)別開來。
隱循環(huán)語句也用于輸出語句,也可使用多重循環(huán)。例如
DIMENSION Y (l0, 6)
READ (*,*) ((Y (I, J), J=1, 6), I=1, 10)
WRITE (*, 5) ((Y (I, J), J=1, 6), I=1, 10)
5 FORMAT (lX, 6F10.2)
運行程序段時,首先讀入60個數(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個數(shù)據(jù),每行輸出6個數(shù)據(jù),數(shù)據(jù)的排列順序與輸入時相同。
例:
1.下列對于一個可執(zhí)行的FORTRAN源程序的敘述,錯誤的是( D )。
A 可以有一個主程序和一個子程序 B.有一個主程序和多個子程序
C可以有一個主程序和沒有子程序 D可以有子程序和沒有主程序
2.FORTRAN77源程序有嚴格的書寫格式,其程序中的每一行分成( B) 四個區(qū)。
A.注釋行、起始行、繼續(xù)行、結(jié)束行 B.標號區(qū)、續(xù)行區(qū)、語句區(qū)、注釋區(qū)
C注釋行、起始行、續(xù)行區(qū)、語句區(qū) D標號區(qū)、續(xù)行區(qū)、語句區(qū)、結(jié)束區(qū)
3.在一個FORTRAN程序中,作用域為整個程序的符號名是( B )。
A.數(shù)組名 B.變量名
C.函數(shù)予程序名 D.語句函數(shù)名
4.FORTRAN賦值語句I=15+3**2/2執(zhí)行后.整型變量I的值是( C )。
A.1 9.5 B.20 C.19 D.1 8
5.FORTRAN語言中的“EQ”含義是指( B )。
A.方程式 B.等于 C.等式 D.邏輯關(guān)系
(一)表控輸入輸出
表控輸入輸出語句是一種隱含格式的輸入輸出語句,其格式由程序編譯系統(tǒng)提供,在 程序語句中不予表示。
1.表控輸出語句
FORTRAN 77表控輸出語句有兩種方式:
PRINT*,輸出量表
WRITE (*,*)輸出量表
這兩種表控輸出語句的作用是相同的,但一般微機上的FORTRAN 77子集不提供PRINT 語句,所以通常使用WRITE 語句。
2.表控輸入
FORTRAN 77表控輸入語句有兩種型式:
READ*,輸入量表
READ (*,*)輸入量表
表控輸入又稱為自由格式輸入。表控輸入語句要求用戶在隱含的輸入設(shè)備(通常是鍵 盤)上輸入所需的數(shù)據(jù),在輸入數(shù)據(jù)時,各數(shù)據(jù)之間用逗號或空格分隔。
(二)格式輸入輸出
1.格式輸出數(shù)據(jù)語句WRITE語句和FORMAT語句
WRITE語句的一般形式為:
WRITE (u, f)輸出量表
其中, u為部件說明符,用以指出在哪個設(shè)備上進行輸出,通常也稱為通道號,當U為記號*時,表示在顯示器(標準輸出設(shè)備)上進行輸出。f為格式說明,它通常是一個格式語句的標號,用以指出輸出數(shù)據(jù)所采用的格式。
格式語句的一般形式為:
標號FORMAT (格式說明)
例如:
WRITE (*, 10) A, B, A*B
10 FORMAT (lX, F6.2, F7.3, F10.4)
FORMAT語句中,第一個"1X"稱為縱向控制符,它表示前進一空格后再輸出后面的數(shù) 據(jù),后面的三個項分別說明了三個實型數(shù)據(jù)輸出的,稱為格式編輯符。
FORTRAN 77也允許在WRITE語句中直接指定輸出格式,從而可以省略格式語句 FORMAT。例如,上面的輸出語句與格式語句可以合并成一個,即:
WRITE (*, I (1X , F6. 2, F7. 3, F10.4) ') A, B, A*B
2.格式編輯符 FORTRAN常用的格式符有十幾種,詳細可參照任何一本FORTRAN教材或?qū)S糜趦浴?BR> (三)隱循環(huán)的輸入輸出
數(shù)組元素的輸入輸出可以采用循環(huán)方式實現(xiàn)。 例如:
DIMENSION X (20)
DO 10 1= 1, 20
20 READ*, X (I)
程序段執(zhí)行時進行20次循環(huán),每次輸入1個數(shù)據(jù)。這個輸入程序段可以改寫如下: DIMENSION X (20)
READ*, (X (I), I = 1, 20)
其中第2句就是隱循環(huán)的輸入語句。循環(huán)控制變量I的初值為1,終值為20,步長為1而 予以省略。隱循環(huán)語句的作用與DO語句是相同的;但使用隱循環(huán)語句時, 20個數(shù)據(jù)允 許一次性輸入,當然,數(shù)據(jù)與數(shù)據(jù)之間要用空格符或逗號區(qū)別開來。
隱循環(huán)語句也用于輸出語句,也可使用多重循環(huán)。例如
DIMENSION Y (l0, 6)
READ (*,*) ((Y (I, J), J=1, 6), I=1, 10)
WRITE (*, 5) ((Y (I, J), J=1, 6), I=1, 10)
5 FORMAT (lX, 6F10.2)
運行程序段時,首先讀入60個數(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個數(shù)據(jù),每行輸出6個數(shù)據(jù),數(shù)據(jù)的排列順序與輸入時相同。
例:
1.下列對于一個可執(zhí)行的FORTRAN源程序的敘述,錯誤的是( D )。
A 可以有一個主程序和一個子程序 B.有一個主程序和多個子程序
C可以有一個主程序和沒有子程序 D可以有子程序和沒有主程序
2.FORTRAN77源程序有嚴格的書寫格式,其程序中的每一行分成( B) 四個區(qū)。
A.注釋行、起始行、繼續(xù)行、結(jié)束行 B.標號區(qū)、續(xù)行區(qū)、語句區(qū)、注釋區(qū)
C注釋行、起始行、續(xù)行區(qū)、語句區(qū) D標號區(qū)、續(xù)行區(qū)、語句區(qū)、結(jié)束區(qū)
3.在一個FORTRAN程序中,作用域為整個程序的符號名是( B )。
A.數(shù)組名 B.變量名
C.函數(shù)予程序名 D.語句函數(shù)名
4.FORTRAN賦值語句I=15+3**2/2執(zhí)行后.整型變量I的值是( C )。
A.1 9.5 B.20 C.19 D.1 8
5.FORTRAN語言中的“EQ”含義是指( B )。
A.方程式 B.等于 C.等式 D.邏輯關(guān)系