资源描述:
《[终稿]fortran输入输出格式控制》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Open,ReadandWriteinFortran1:write(*,*)nstringf,;write(unit=*,FMT=*)t,stringf,;write(unit=6,FMT=*),tstringno以上等价,6是默认输出位置,即屏幕。2:print*,"string”。Print只能对屏幕输出。3:integer(kind=4)a!f90;integer*4a!f77;integer(4)a!f77。以上等价。real(kind=4)a!f90;real*4a!f77;real(4)a!f77o以上等价。4:f77,变量名长度1〜6;f90,变量名长度1〜31。5:rea
2、d(*,*)”string”;write(unit=*,FMT=*)nstring";write(unit=5,FMT=*),,string',o以上等价,5是默认输入位置,即键盘。6:FORMATAw以w个字符宽来输出字符串BN定义文本框中的空位为没有东西,在输入时才需要使用BZ定义文本框中的空位代表0,在输入时才需要使用Dw.d以w个字符宽来输出指数类型的浮点数,小数部分占d个字符宽Ew.dfEe]以w个字符宽来输出指数类型的浮点数,小数部分占d个字符宽,指数部分占e个字符ENw.d[Ee]以指数类型来愉出浮点数ESw.d[Ee]以指数类型来输出浮点数Fw.d以w个字符宽来输出浮点数
3、,小数部分占d个字符宽Gw.d[Ee]以w个字符宽来输出整数,最少输出m个数字以w个字符宽来输出猿数,谴少输出m个数字Lw以w个字符宽来输出T或F的真假值nX把输出的位Zf向右跳过n个位骨/代表换行■在没有更多数据时结東输出kPK值拎制16入输出的SCALETn输出的位迓移动到本行第n列TLn输出的位宙向左相对移动n列TRn输出的位置向右相对移动n列SP在数值为正时加上“正号"SS取消SPFortran90添加的格式Bw[.m]把轅数转换成二进制来输出、输出会占w个字符宽,固定输出m个数字.m值可以不给定Ow[.m]把整数转换成八进制来输出,输出会占w个字符宽,固定愉出m个数字.血值可以
4、不给定Zw[.m]把轅数转换成十六讲制来输出,输出矣占W个字符览,固定输rtnn个数字.m値可以不给定(http://202.ll8.74.226/fortran/pages/730.htm)6.1格式输出格式输出语句由两部分组成:输出语句和输出格式语句。输出语句的一般形式为:WRITE(*,L)输出表列或:PRINTL输出表列其中:*代表隐含的输出设备,L指输出格式语句的标号。输出格式语句的一般形式:LFORMAT(1X,S)其中:L输出格式语句的标号,IX纵向走纸符,S输出格式,用不同的“格式编辑符''(简称“编辑符")來实现指定的输出格式,各格式间用逗号相隔。FORMAT语句又叫“
5、格式语句”,是一个非执行语句,本身不产生任何操作,只是提供输入或输出的格式。FORMAT语句可以岀现在程序的任何地方(但必须在PROGRAM语句之后和END语句之前,如果在子程序屮用FORMAT语句,则应在子程序定义语句之后)。系统按WRITE语句或PRINT语句中指定的语句标号找到相应的FORMAT语句,并按FORMAT语句所规定的格式对数据进行输出。注意,PRINT语句屮不能再用“性PRINT语句屮的第一个标识符是语句标号而不是要打印输出的数据。输出格式分两类基本格式6.1.1I格式(又叫整数格式)一般形式:Iw或:Iw.m其中:w一个数据占的位数宽度(乂称“字段宽度m需要输出的最少
6、数字位数。例]:WRITE(*,100)M,N100FORMAT(IX,14,14)如果M=40,N=-12,则输岀如下:??40?-12例2:WRITE(*,100)1,J,K100FORMAT(1X,I5.3,I6.3,I4)若1=1234,J=-24,K=24689则输出为:?1234???J4****(1)数字在指定的区域内向右端靠齐,如果数字位数比指定的字段宽度w小,则左边补以空格。负数的符号也包含在字段宽度内。(2)如果数字位数超过了规定的字段宽度w,则不输出有效数据,而在该字段宽度范围内充满"'‘符号。(3)如果数字位数超过了m,则按实际应输出的位数输出(但条件是不能超过w
7、)om不包括负号所占的一列。6.1.2F格式(又叫小数型格式)一般形式:Fw.dw各数值占的总位数d输出数据的小数位数(小数点后的位数)。例1:WRITE(*,100)A,B,C100FORMAT(1X,F10.2,F9.3,F8.4)若A=1234.56,B=3456.78,0234.56789则输出:???1234.5673456.780234.5679例2:WRITE(*,100)X,Y100FORMAT(1X,F10.4,F