| 
 
	积分93贡献 精华在线时间 小时注册时间2018-3-19最后登录1970-1-1 
 | 
 
| 
想要画站点的温度数据,然而一直报错,也参考了网上一些类似报错的情况修改了不少,但仍然没法生成.map文件,跪求各位大佬指点迷津!
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 我的Fortran代码:
 program main
 
 integer,parameter::s=160,y=68
 integer air(12,s,y),airclm(s,12),lat(s),lon(s),test(1126)
 integer i,iy,im
 character*2 mon
 character(len=4) stid(s),testid(160)
 
 do im=1,12
 if(im.lt.10) then
 write(mon(1:1),'(a)') '0'
 write(mon(2:2),'(i1)') im
 else
 write(mon(1:2),'(i2)') im
 endif
 open(1,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\t16'//mon//'.txt')
 read(1,*)((air(im,i,iy),i=1,s),iy=1,y)
 end do
 
 open(2,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\station.dat',status='old')
 do i=1,s
 read(2,*) lat(i),lon(i)
 enddo
 close(2)
 
 do im=1,12
 do i=1,s
 do iy=1,y
 airclm(i,im)=airclm(i,im)+air(im,i,iy)
 end do
 airclm(i,im)=airclm(i,im)/y
 end do
 end do
 
 open(3,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\air.grd',form='binary')
 do i=1,s
 write(stid(i),'(i4)') i
 tim=0.0
 nlev=1
 nflag=1
 write(3)stid(i),lat(i),lon(i),tim,nlev,nflag,airclm(i,1)
 write(*,*)stid(i),lat(i),lon(i),tim,nlev,nflag,airclm(i,1)
 enddo
 tim=0.0
 nlev=0
 nflag=1
 write(3)stid(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
 close(3)
 
 
 end
 fortran输出的结果:
 
   
 站点数据的ctl:
 dset c:\users\smliu\desktop\air.grd
 dtype station
 stnmap c:\users\smliu\desktop\air.map
 undef -999.0
 title the 160 station winter r anomaly
 tdef 1 linear jan1984 1mo
 vars 1
 air  0 99 1 temperature
 endvars
 
 报错结果:
 
 
   
 | 
 |