PROGRAM MAIN
USE typedef
implicit none
real::rain
type(tdd),allocatable::t(:)! 保存气温值
type(tdd):: total !日均温累加
integer i , m , dy , start , end
character(len=3) :: line
open(7,file="CN019067")
I=0
do
READ(7,*,end=100) line
i=i+1
end do
100 m = i - 1 !//你这个前面只多了一行
rewind(7)
allocate( t(m))
read(7,*)
write(*,*)"start:"
read(*,*) start
write(*,*)"end:"
read(*,*) end
do i=1,m
read(7,*)dy , t(i)%tmax , t(i)%tmin , rain
t(i)%average=(t(i)%tmax+t(i)%tmin)/2 !日均温
end do
total%average = 0
do i=start,end
total%average=total%average+t(i)%average !日均温累加=积温
enddo
print *, dy,total%average !
end PROGRAM vvt 发表于 2017-1-31 23:46
PROGRAM MAIN
USE typedef
implicit none
谢谢,光照搬书上例子,把动态数组给忘了,还是要活学活用啊 你欠缺一点对程序的理解。
文件的行数,必须运行的时候才能判断,然后才能知道数组的大小。
运行以后才知道大小的数组,就得用动态数组。
有两个时间很重要:编译时,和运行时。
vvt 发表于 2017-2-1 10:02
你欠缺一点对程序的理解。
文件的行数,必须运行的时候才能判断,然后才能知道数组的大小。
运行以后才知道 ...
嗯嗯 明白了 谢谢 vvt 发表于 2017-2-1 10:02
你欠缺一点对程序的理解。
文件的行数,必须运行的时候才能判断,然后才能知道数组的大小。
运行以后才知道 ...
我有个关于批量处理的问题发了个新帖 麻烦帮忙看一下吧:-loveliness:
页:
1
[2]