欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    Fortran第12章.ppt

    • 资源ID:67210893       资源大小:266KB        全文页数:33页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Fortran第12章.ppt

    Visual Fortran 90 程序设计程序设计12.1 文件的基本概念文件的基本概念12.4 文件的应用举例文件的应用举例12.2 文件操作语句文件操作语句12.3 文件的操作文件的操作一、引入文件的目的:一、引入文件的目的:便于输入、输出便于输入、输出数据的保存与维护数据的保存与维护二、程序结构的变化:文件要先打开,再输入、输出二、程序结构的变化:文件要先打开,再输入、输出主程序:主程序:单位定义单位定义 说明说明 打开用于输入、输出的文件打开用于输入、输出的文件 从输入文件中从输入文件中读数据读数据 调用子程序处理调用子程序处理 将结果将结果写到输出文件中写到输出文件中 关闭用于输入、输出的文件关闭用于输入、输出的文件 END子程序:不变子程序:不变12.1.1 记录记录 1、记录:一行称为一个记录(记录是字符或数值的序列),以回、记录:一行称为一个记录(记录是字符或数值的序列),以回车作为标记。车作为标记。记录是输入、输出的基本单位。记录是输入、输出的基本单位。2、记录的三种格式:、记录的三种格式:(1)有格式记录)有格式记录输入输出数据要经过编辑转换,以输入输出数据要经过编辑转换,以ASCII码或其他信息交换码的方码或其他信息交换码的方式进行传输。数据格式由用户指定式进行传输。数据格式由用户指定(如如I3,F4.1格式等格式等)或由编译系或由编译系统规定统规定(如如*格式)格式)(2)无格式记录)无格式记录由二进制代码直接传输,输入输出无需做格式转换。由二进制代码直接传输,输入输出无需做格式转换。仅适合与磁盘操作仅适合与磁盘操作(3)文件结束记录)文件结束记录是文件的结束标记,文件结束记录不作为数据的内容处理是文件的结束标记,文件结束记录不作为数据的内容处理12.1 文件基本概念12.1.2 文件文件文件是相关记录的有序集合。文件都有文件是相关记录的有序集合。文件都有文件名文件名文件的分类文件的分类 1、按存储位置:外部文件、内部文件、按存储位置:外部文件、内部文件外部文件:存放在外部存储介质上的文件,或外部设备本身(显示器、外部文件:存放在外部存储介质上的文件,或外部设备本身(显示器、打印机等)。打印机等)。内部文件:存放在内存中的一个字符变量、字符数组或字符数组元素。内部文件:存放在内存中的一个字符变量、字符数组或字符数组元素。如果内部文件是一个字符变量或字符数组元素,则它只有一个记录。如果内部文件是一个字符变量或字符数组元素,则它只有一个记录。2、按存取方式:顺序存取文件、按存取方式:顺序存取文件由记录指针控制由记录指针控制 顺序存取文件存取操作必须顺序存取文件存取操作必须从头到尾顺序进行从头到尾顺序进行 直接存取文件直接存取文件由记录号控制由记录号控制 可以在程序的执行中对可以在程序的执行中对任意一个指定的记录任意一个指定的记录进行读写。进行读写。3、按格式:随记录分为有格式文件、无格式文件、按格式:随记录分为有格式文件、无格式文件 重点掌握有格式顺序存储的外部文件的应用重点掌握有格式顺序存储的外部文件的应用 4、打开文件时的状态、打开文件时的状态分类分类:老文件、新文件:老文件、新文件 老文件:打开文件时,文件已存在老文件:打开文件时,文件已存在 新文件:打开文件时,文件不存在新文件:打开文件时,文件不存在注意:文件应先连接(即打开)或预连接注意:文件应先连接(即打开)或预连接(显示器、(显示器、打印机等)打印机等),再读写,再读写12.1.3 逻辑设备逻辑设备1.特殊设备号:由系统预先定义特殊设备号:由系统预先定义 用设备号用设备号5定义键盘,设备号定义键盘,设备号6定义显示器定义显示器 *即可定义键盘又可定义显示器即可定义键盘又可定义显示器注意:这些设备是预连接的,注意:这些设备是预连接的,不需要打开就可以直接使用不需要打开就可以直接使用2.内部文件的设备号:不需要打开就可以直接使用内部文件的设备号:不需要打开就可以直接使用 字符型变量或字符型数组,用来指定一个内部文件。字符型变量或字符型数组,用来指定一个内部文件。3.外部文件的设备号外部文件的设备号 数值型的常量或变量,用来指定一个外部文件。数值型的常量或变量,用来指定一个外部文件。一个设备号只能与一个文件相连接,而一个文件一次一个设备号只能与一个文件相连接,而一个文件一次也只能与一个设备号连接。也只能与一个设备号连接。12.2 文件的操作语句对文件的对文件的基本操作基本操作包括包括打开、关闭及读、写文件打开、关闭及读、写文件。通常有通常有四种类型四种类型的文件的文件:有格式顺序存取文件、无格:有格式顺序存取文件、无格式顺序存取文件、有格式直接存取文件、无格式直接存式顺序存取文件、有格式直接存取文件、无格式直接存取文件。取文件。12.2.1、文件的打开、文件的打开一般形式如下:一般形式如下:OPEN(连接信息表)连接信息表)连接信息表所包含的说明符如下:连接信息表所包含的说明符如下:1、UNIT=ut ut 是设备号,为整型常数或表达式,值必须是无是设备号,为整型常数或表达式,值必须是无符号整数符号整数0-99,当设备号为第一个说明符时,当设备号为第一个说明符时,UNIT=可省略可省略2、FILE=fe fe字符型常量或表达式,代表文件名字符型常量或表达式,代表文件名 例如:例如:OPEN(3,FILE=DATA.DAT)3、STATUS=ss。ss用户给出的字符串,表示文件的状态。用户给出的字符串,表示文件的状态。有五种值可选:有五种值可选:NEW,OLD,REPLACE,SCRATCH,UNKNOWN 默认默认为为UNKNOWN(状态未知,由系统自动处理)(状态未知,由系统自动处理)其中其中SCRATCH 表示打开临时文件,关闭文件时自动删除。表示打开临时文件,关闭文件时自动删除。4、ACCESS=as。as是字符串,表示存取方式,其值可为是字符串,表示存取方式,其值可为Sequential(顺序的)或顺序的)或DIRECT(直接的)。直接的)。缺省缺省为顺序为顺序SEQUENTIAL5、FORM=fm。fm是字符串,其值为是字符串,其值为Formated或或Unformated,表明文件是有格式的还是无格式的。表明文件是有格式的还是无格式的。对对顺序文件的缺省值顺序文件的缺省值为有格式为有格式Formated 对对直接文件的缺省值直接文件的缺省值为无格式为无格式Unformated。6、RECL=rl。rl是正整数的整型表达式,用来指定文件中记是正整数的整型表达式,用来指定文件中记录的长度。录的长度。直接文件中每个记录必须相等,必须选择直接文件中每个记录必须相等,必须选择RECL项项,顺序文件不需要使用该项。,顺序文件不需要使用该项。7、ACTION=an。为一字符串,可取为一字符串,可取READ、WRITE、Readwrite(默认值默认值)。为)。为可选项可选项8、BLANK=bk。为一字符串,可取为为一字符串,可取为NULL(默认值)或默认值)或ZERO。控制文件中的控制文件中的空格是忽略不计还是当零处理。空格是忽略不计还是当零处理。为可选项为可选项9、IOSTAT=IS。IS整型变量。整型变量。OPEN语句语句执行时,获得数值。执行时,获得数值。执行成功则为零执行成功则为零,否则为一正整数。为可选项,否则为一正整数。为可选项10、ERR=label。若打开文件出错,则转向标号语句。为可选若打开文件出错,则转向标号语句。为可选项项说明:说明:1、OPEN语句中各说明符的语句中各说明符的次序可以任意次序可以任意2、文件与设备号在某一程序单元中连接成功,就、文件与设备号在某一程序单元中连接成功,就在该程序的所有单元中都保持这种连接关系。直到在该程序的所有单元中都保持这种连接关系。直到程序结束,除非使用程序结束,除非使用CLOSE或新的或新的OPEN语句。语句。例:有格式顺序文件例:有格式顺序文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT)例:有格式直接文件例:有格式直接文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT,ACCESS=DIRECT,FORM=FORMATTED,RECL=12)RECL:规定记录的统一长度规定记录的统一长度例:无格式顺序文件例:无格式顺序文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT,FORM=UNFORMATTED)例:无格式直接文件例:无格式直接文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT,ACCESS=DIRECT,RECL=16)12.2.2、文件关闭、文件关闭 CLOSE语句语句解除文件与设备号的连接关系,并关闭该文件。解除文件与设备号的连接关系,并关闭该文件。写法:写法:CLOSE(关闭信息表)关闭信息表)关闭信息表主要有下列说明符:关闭信息表主要有下列说明符:UNIT=ut 当设备号为第一个说明符时,当设备号为第一个说明符时,UNIT=可省略可省略STATUS=SS 为可选项为可选项IOSTAT=IS 指定文件关闭后是否保留指定文件关闭后是否保留。为可选项。为可选项 IS可为可为KEEP(默认值)或默认值)或DELETE。最简写法:最简写法:CLOSE(2)12.2.4、文件的输入输出语句、文件的输入输出语句1、从文件中读数据的语句:、从文件中读数据的语句:写法:写法:READ(控制信息表)输入表控制信息表)输入表2、将数据写到输出文件中、将数据写到输出文件中 写法:写法:WRITE(控制信息表控制信息表)输出表输出表控制信息表:控制信息表:设备说明符:设备说明符:UNIT=UT 设备号设备号格式说明符:格式说明符:FMT=FT(无格式不写)无格式不写)记录说明符:记录说明符:REC=记录号(仅用于直接文件)记录号(仅用于直接文件)状态说明符:状态说明符:IOSATA=IS(可选)(可选)例:例:READ的选项的选项IOSTST=IT IT为整型变量执,执行此语句时获得为整型变量执,执行此语句时获得数值,数值,0 此操作发生错误此操作发生错误 =0 执行成功执行成功无此项,读写发生错误将报错,并停止运行无此项,读写发生错误将报错,并停止运行ADVANCE=YES(默认值):遇下一个输入语句默认值):遇下一个输入语句换行读取换行读取=NO:遇下一个输入语句不换行读取遇下一个输入语句不换行读取WRITE的选项的选项IOSTST=IT IT为整型变量执,执行此语句时获得数值,为整型变量执,执行此语句时获得数值,0 此操作发生错误此操作发生错误 =0 执行成功执行成功无此项,读写发生错误将报错,并停止运行无此项,读写发生错误将报错,并停止运行ADVANCE=YES(默认值):遇下一个输出语句换行默认值):遇下一个输出语句换行输出输出=NO:遇下一个输出语句不换行输出遇下一个输出语句不换行输出12.3 文件的操作文件的操作12.3.1 有格式顺序文件的操作:打开时设置指针有格式顺序文件的操作:打开时设置指针1、OPEN语句的语句的最简形式最简形式例:例:OPEN(2,FILE=A.DAT)功能:把文件与设备号功能:把文件与设备号2连接起来且文件指针指向第一个连接起来且文件指针指向第一个记录。记录。(文件指针指向的记录称为(文件指针指向的记录称为当前记录当前记录)。)。2、READ语句语句最简写法最简写法:READ(设备号,格式说明)输入表(设备号,格式说明)输入表例:例:READ(2,*)A,B,C READ(2,FMT=(3F4.1)A,B,C注意点:注意点:(1)对顺序存储文件总是读对顺序存储文件总是读当前记录当前记录 (2)读完后指针下移一个记录)读完后指针下移一个记录 (3)如无输入表,仅指针下移一个记录)如无输入表,仅指针下移一个记录3、WRITE语句最简写法:语句最简写法:WRITE(设备号,格式说明)输出表设备号,格式说明)输出表例:例:WRITE(2,*)A,B,C WRITE(2,(3F4.1)A,B,C注意点注意点(1)对顺序存储文件总是写在文件指针指向的记录处。对顺序存储文件总是写在文件指针指向的记录处。(2)写完后指针下移一个记录)写完后指针下移一个记录 (3)总是改写)总是改写 (4)总是写最后一个记录)总是写最后一个记录4、顺序文件的存取、顺序文件的存取有关有关顺序文件的文件指针顺序文件的文件指针操作语句操作语句:OPEN:文件指针指向第一条记录文件指针指向第一条记录READ:文件指针下移一个记录文件指针下移一个记录WRITE:文件指针下移一个记录文件指针下移一个记录REWIND语句语句:文件指针指向第一条记录文件指针指向第一条记录BACKSPACES语句语句:文件指针上移一个记录文件指针上移一个记录REWIND语句(反绕语句)不论当前文件的指针在何处,如果想把文件定位到文件初始不论当前文件的指针在何处,如果想把文件定位到文件初始点,都可以通过反绕语句实现。点,都可以通过反绕语句实现。反绕语句有两种形式:反绕语句有两种形式:REWIND 设备号设备号REWIND(定位说明符表)定位说明符表)UNIT=设备号,必选项设备号,必选项 IOSTAT=整型变量整型变量,可选项,用法同,可选项,用法同OPEN语句语句例如:例如:REWIND 2 REWIND(2)REWIND(IOSTAT=I,UNIT=12)Backspace语句(回退一个记录语句)语句(回退一个记录语句)Backspace 语句使指定设备号连接的文件在当语句使指定设备号连接的文件在当前位置上前位置上回退一个记录回退一个记录。当前文件定位到第当前文件定位到第N个记录之后,执行一次个记录之后,执行一次backspace 语句,就定位在第(语句,就定位在第(N-1)个记录之后。个记录之后。该语句有两种形式:该语句有两种形式:BACKSPACE 设备号设备号BACKSPACE(定位说明符表)定位说明符表)阅读程序阅读程序:OPEN(1,FILE=ABC)DO I=1,3WRITE(1,(2I3)I,I*IENDDOBACKSPACE(1)READ(1,(2I3)K1PRINT*,K1REWIND(1)DO WHILE(IS=0)READ(1,(2I3),IOSTAT=IS)K2ENDDOPRINT*,K2ENDEND FILE语句(结束语句)语句(结束语句)END FILE语句在指定文件当前位置处语句在指定文件当前位置处写上一写上一个文件结束记录。个文件结束记录。执行该语句后,文件指针定位在文件结束记录执行该语句后,文件指针定位在文件结束记录之后,之后,不能再读写原来连接的文件不能再读写原来连接的文件。一般也有两种形式:一般也有两种形式:END FILE 文件号文件号 END FILE(定位说明符表)定位说明符表)用法同用法同REWIND语句。语句。12.3.2有格式直接存取文件的操作有格式直接存取文件的操作有格式有格式直接文件可以直接存取任一记录。直接文件可以直接存取任一记录。(无记录指针)(无记录指针)1、OPEN语句的最简形式语句的最简形式例:例:OPEN(2,FILE=A.DAT,ACCESS=DIRECT,FORM=FORMATTED,RECL=12)注意:注意:OPEN语句中语句中需加入需加入RECL=“整型表达式整型表达式”RECL:规定记录的统一长度规定记录的统一长度。直接文件的每个记录必须相同直接文件的每个记录必须相同,否则难以实施直接存取。,否则难以实施直接存取。2、READ语句最简写法:语句最简写法:指明指明REC=记录号记录号 READ(设备号(设备号,格式说明格式说明,REC=记录号)输入表记录号)输入表 例:例:READ(2,*,REC=5)A,B,C3、WRITE语句最简写法:指明语句最简写法:指明REC=记录号记录号 WRITE(设备号(设备号,格式说明格式说明,REC=记录号)输入记录号)输入表表 WRITE(2,*,REC=5)A,B,C在读写语句中通过在读写语句中通过指明记录号指明记录号,就可直接存取该记录内,就可直接存取该记录内的数据,而不必从文件的开头依次去读写。的数据,而不必从文件的开头依次去读写。12.3.3 无格式文件无格式文件 无格式文件采用格式文件采用二进制二进制内码进行存放数据。内码进行存放数据。如:如:654321:00000000000010011111101111110001 系统读写文件时不需要进行格式转换,加快了数据系统读写文件时不需要进行格式转换,加快了数据存取速度、也节省了大量的外存空间。存取速度、也节省了大量的外存空间。但在操作系统环境下无法看懂其中的内容。但在操作系统环境下无法看懂其中的内容。仅适合仅适合磁盘操作。磁盘操作。1、OPEN语句的最简形式语句的最简形式例:无格式顺序文件例:无格式顺序文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT,FORM=UNFORMATTED)例:无格式直接文件例:无格式直接文件OPEN语句的最简形式语句的最简形式OPEN(2,FILE=A.DAT,ACCESS=DIRECT,RECL=16)2、READ语句最简写法:语句最简写法:无格式顺序文件、直接文件的无格式顺序文件、直接文件的READ语句:与有格式的区别是语句:与有格式的区别是去掉格式说明去掉格式说明这一项这一项顺序文件顺序文件READ(设备号)输入表(设备号)输入表直接文件直接文件READ(设备号(设备号,REC=记录号)输入表记录号)输入表例:例:READ(10)I,J READ(10,REC=3)I,J3、WRITE语句最简写法:语句最简写法:例:例:WRITE(10)I,J WRITE(10,REC=3)I,JINQUIRE语句 该语句又称查询语句。按功能分为两种:按设备号查询或按文件名查询,按长度查询。(1)INQUIRE(1,EXIST=ET,NAME=NE)INQUIRE(FILE=STUD.DAT,OPENED=OP,&ACCESS=AS,NUMBER=NR)(2)INQUIRE(IOLENGTH=L)输出表 其功能是查询输出表的长度,一般用在建立无格式直接存取文件之前。查询的结果作为记录长度(RECL说明符使用)。

    注意事项

    本文(Fortran第12章.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开