Fortran Coder

标题: fortran 读入矩阵的问题 [打印本页]

作者: 176530355    时间: 2015-8-23 15:35
标题: fortran 读入矩阵的问题
txt文件
----------------------
uptri
1 2 3
4 5 6
7 8 9
downtri
1 0 0
2 2 0
3 2 1
---------------------------
主程序
[Fortran] 纯文本查看 复制代码

    program Console45
    implicit none
    integer,parameter::n=3
    character(10)::string
    real::a(n,n)
    integer::i,er
    open(11,file='1.txt')
        do
                read(11,*) string
                if(er/=0) exit
                if(string(1:7)=='downtri') then
                      do i=1,n
                          read(11,*) a(i,:)
                      end do
                end if
        end do

        do i=1,n
        write(*,*) a(i,:)
        end do

    pause
    end program Console45

想请问各路神仙   为什么不能读入成功呢



作者: fcode    时间: 2015-8-23 15:45
read(11,*,iostat=er) string !//此处加iostat
作者: 176530355    时间: 2015-8-23 15:46
啊 真的可以啊  这是 为什么呢 多谢大侠啊
作者: fcode    时间: 2015-8-23 15:48
因为你下面代码
if(er/=0) exit
是用 er 来判断文件是否结束的。你不加 iostat 的话,编译器不会自动把结果复制给 er
作者: 176530355    时间: 2015-8-23 15:56
多谢大侠 指点 啊   我还要在翻翻书才能理解你说的




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2