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