- 积分
- 1638
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-6-21
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2014-5-1 14:36:10
|
显示全部楼层
你好,再请问你:
我有600个文件,用循环打开,并且每次先空读获取文件内部资料的行数,再去分配动态数组的空间,循环的次数也是获取的N,怎么每次都是只能运行两个文件就终止了呢?我试着从第三个文件开始也是运行两次就结束了。。付部分程序如下:
do h=1,600
open(2,file='g:\fdata\swdata\'//fname(h))
n=0
do while(.true.)
read(2,*,end=100)
n=n+1
enddo
100 close(2)
print*, n
pause
allocate(st(n))
allocate(lat(n))
allocate(lon(n))
allocate(hh(n))
allocate(yr(n))
allocate(mon(n))
allocate(dy(n))
allocate(sun(n))
allocate(qq(n))
open(2,file='g:\fdata\swdata\'//fname(h))
do i=1,n
read(2,*)st(i),lat(i),lon(i),hh(i),yr(i),mon(i),dy(i),sun(i),qq(i)
print*,st(i),lat(i),lon(i),hh(i),yr(i),mon(i),dy(i),sun(i),qq(i)
end do
close(2)
open(3,file='g:\fdata\avedata\'//fname(h))
print*, n
pause
。。。下面是写入文件的程序(略了) |
|