- 积分
 - 544
 
	- 贡献
 -  
 
	- 精华
 
	- 在线时间
 -  小时
 
	- 注册时间
 - 2012-3-4
 
	- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
	
 
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册 
 
 
 
x
 
 本帖最后由 polestar7 于 2012-3-30 20:43 编辑  
 
求各位大神帮帮忙吧,我这里有一个降水资料(txt),全国525个台站,有台站编号以及台站经纬度,降水资料从1959年1月到2009年12月,资料是月平均的,现在想截取lat(21-30),lon(97-107)这个区间的台站降水资料,关于截取部分不太明白,txt文件格式及我的编程如下,请各位帮忙看一下吧。 
全国降水资料 
 
 
 
program rain 
   implicit none 
   integer:: iyr(52),imo(12) 
    integer:: i,j,k 
   real :: lon(525),lat(525),rr(525,12,52), 
   integer,allocatable::a(:,:,:),rm(:,:,:) 
   character*5 stn(525) 
   character*55 filein,fileout 
   filein="D:\data to stud\rainfall\station\1\rain_quanguo_mon_grads.txt" 
   fileout="D:\data to stud\rainfall\station\1\rain_djf_525stn.txt" 
   open(10,file=filein,status='old',form='formatted') 
   open(11,file=fileout,status='old',form='formatted') 
    rr=0.0  
    do k=1,51 
do j=1,12 
do i=1,525 
    read(10,400)iyr(k),imo(j),stn(i),lat(i),lon(i),rr(i,j,k) 
    enddo 
enddo 
enddo 
write(*,400)iyr(51),imo(12),stn(525),lat(525),lon(525),rr(525,12,1) 
write(*,*) rr(525,1,2),rr(525,2,2) 
400 format(i4,2x,i2,2x,a5,f8.2,f8.2,2x,f8.1)  !逐月数据读入格式 
 
   
  do k=1,51 
  do j=1,12 
  do i=1,525 
  if(lat(i)>=21.00.and.lat(i)<=30.00.and.lat(i)>=97.00.and.lat(i)<=107.00) 
    write(11,400)iyr(i),imo(12),stn(i),lat(i),lon(i),r(:,12,51)  
end if 
enddo 
   enddo  
enddo 
    
close(10) 
close(11) 
stop 
end 
 
 |   
 
 
 
 |