资源描述:
《Fortran教程第六章格式输入输出.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章格式输入输出6.1输入输出概述6.2格式输入输出语句6.3格式说明语句6.4常用的编辑描述符6.5输入输出项与编辑符的相互作用6.1输入输出概述输入输出是指在计算机内存与外部设备之间传送数据的过程。从外部设备将数据传送到计算机内存称为输入。将计算机内部的数据传送到外部设备称为输出。要顺利地传送数据,一般应在输入输出语句中给计算机提供三方面的信息:(1)通过什么设备来进行输入输出。(2)采用什么样的格式来进行输入输出。(3)输入输出的具体内容。每一种计算机系统都隐含指定一种输入设备和输出设备。在
2、微机中,隐含指定键盘为输入设备,显示器为输出设备。在输入输出数据较多时,也可以使用磁盘作为输入输出设备,即从已经建立的磁盘文件中去读取数据,将处理结果写入到磁盘文件中去。关于文件操作将在第11章介绍。输入输出的格式由格式编辑符来指定,不同的数据类型需要不同的格式编辑符,不同的格式编辑符确定不同的输入输出格式。输入输出的具体内容即输入输出项,输入项只能为变量,输出项可以为常量、变量、函数和表达式,也可以是隐含的DO循环。下面先看一个格式输入输出的例子。程序输出为:135每循环一次输出循环变量J的值,每
3、个数据占5格INTEGERJDOJ=1,5,2WRITE(*,10)JENDDO10FORMAT(1X,3I5)END再看下面的例子。INTEGERJWRITE(*,10)(J,J=1,5,2)10FORMAT(1X,3I5)END程序输出为:135程序中,WRITE语句的输出项“(J,J=1,5,2)”是一个隐含的DO循环,当作一个整体输出,每个数据占5格。6.2格式输入输出语句6.2.1格式输出格式输出语句有两个:PRINT语句和WRITE语句。1.PRINT语句PRINT语句的一般格式是:PR
4、INTf,输出项其中f是格式说明符,指明了输出所用的格式。它有以下三种形式:(1)格式说明符是一个“*”,表示输出使用表控格式。(2)格式说明符是一个字符常量。例如PRINT'(1X,2F7.3)',X,Y(3)格式说明符是格式语句(FORMAT)的语句标号。这是最常用的格式输出形式。例如PRINT100,A,B,C100FORMAT(1X,F9.4,2F7.3)输出项指定了输出的具体内容。输出项可以是变量、常量、函数以及表达式。此外,输出项还可以是隐含DO循环。2.WRITE语句WRITE语句的一
5、般格式是:WRITE(u,f)输出项其中u是设备号,用于指明具体使用的输入输出设备。u可以是一个无符号整常量,也可以是一个整型变量或整型表达式,还可以是星号*。*表示由计算机系统预先约定的外部设备,一般为显示器。f是格式说明符,指明了输入输出所用的格式。它也有三种形式,用法与PRINT语句相同。输出项也可以是常量、变量、函数以及表达式,还可以是隐含的DO循环。6.2.2格式输入格式输入语句是指READ语句,它有两种形式:READf,输入项READ(u,f)输入项其中f指明了输入所用的格式。它有以下三
6、种形式:(1)格式说明符是一个“*”,表示输入使用表控格式。(2)格式说明符是一个字符常量。例如READ(*,'(I3,2I4)')I,J,K(3)格式说明符是格式语句(FORMAT)的语句标号。这是最常用的格式输入形式。u是设备号,用于指明具体使用的输入设备。u可以是一个无符号整常量,也可以是一个整型变量或整型表达式,还可以是星号“*”。“*”表示由计算机系统预先约定的外部设备,一般为键盘。输入项指定了输入的具体内容。输入项目可以变量,不允许是常量或表达式。此外,输入项目也可以是隐含DO循环6.3
7、格式说明语句FORTRAN用专门的格式说明来描述输入输出的格式。尽管格式说明可以直接放在输入输出语句中,但为了使程序的可读性更强,最好使用格式说明语句来进行格式说明。格式说明语句的一般格式是:nFORMAT(格式说明)其中n是语句标号,FORMAT语句一定带有语句标号,以便同格式输入输出语句配合使用。格式说明由若干个编辑描述符组成,编辑描述符之间用逗号分隔。例如10FORMAT(1X,I4,F5.1)格式说明语句是非执行语句,它只是给输入输出语句提供数据的格式描述。在程序运行过程中,由输入输出语句根
8、据格式说明语句提供的数据格式描述,实现数据的格式控制。单独的格式说明语句在程序中不器任何作用。例如10FORMAT(1X,I4,F5.1)WRITE(*,10)2345,67.8格式说明包含3种编辑描述符X,I和F。分别用I4和F5.1来控制2345和67.8的输出格式,1X也有特定的用途。格式说明语句可以放在程序单位语句(主程序语句PROGRAM,子程序语句FUNCTION或SUBROUTINE)之后,END语句之前的任何位置。6.4常用的编辑描述符编辑描述符分成两