爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 3312|回复: 4

[分享资料] 好奇怪的问题。。。求强人们解答~~~

[复制链接]

新浪微博达人勋

发表于 2013-4-21 19:58:35 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
大神们好:我首先编了一段读数据的程序:
program t
parameter(n=160,m=55,tt=12)
integer it(n,m,tt),ave(m,n)
CHARACTER aa*5,mon(tt)*2
data mon/'01','02','03','04','05','06','07','08','09','10','11','12'/
data aa/'t1601'/
do k=1,tt
aa(4:5)=mon(k)
open(11,file=aa)
read(11,*)((it(i,j,k),i=1,n),j=1,m)
close(11)
enddo
do i=1,m
do j=1,n
do k=6,8
ave(i,j)=ave(i,j)+it(j,i,k)/3
enddo
enddo
enddo
  open(12,file='d:\paper\160\ts.grd',form='binary')
write(12)((ave(i,j),i=1,m),j=1,n)
  open(13,file='d:\paper\160\ts.txt')
write(13,*)((ave(i,j),i=1,m),j=1,n)
end

然后可以看到txt里面前部分是这样的:
     183         183         183         194         183         185
         172         177         182         187         171         185
         184         168         177         186         182         191
         178         196         184         157         190         192
         189         173         188         181         185         201
         176         192         171         180         183         191
         184         200         188         191         192         185
         186         189         187         173         192         194
         196         203         200         200         183         195
         206         168         172         170         167         173
         162         151         163         160         158         161
         161         161         157         156         160         162
         167         156         171         159         146         163
         169         160         145         158         158         162
         168         155         170         148         156         160
         161         158         168         154         162         166
         156         157         178         167         167         168
         161         166         178         177         169         160
         173         168         184         183         177         172
         179         173         166         172         177         177
         175         176         177         177         175         179
         179         187         177         192         181         165
         181         187         185         167         180         175
         182         191         174         190         165         173
         180         187         181         191         172         174
         184         182         173         200         186         183
         189         183         190         199         211         198
         184         204         195         142         142         142
         142         142         142         135         143         144
         147         135         142         146         138         137
         142         144         146         144         155         143
         124         148         154         146         132         145
         139         142         156         139         155         134
         140         147         149         142         156         140
         155         160         141         145         161         156
         146         154         152         150         163         163
         161         141         159         153         188         192
         193         192         194         186         178         187
         187         189         186         186         190         182
         184         187         190         197         187         199
         190         173         196         197         191         180
         191         191         187         200         184         208

。。。。。。。。。。。。。。。。。。。。。
再想编程把它们读入:
        parameter (n=160,m=55)
      real ts(m,n)
        open(1,file='ts.grd',form='binary')
        read(1)((ts(i,j),i=1,m),j=1,n)
        open(2,file='tss.txt')
        write(2,*)((ts(i,j),i=1,m),j=1,n)
        close(1)

结果得到文件前部分是这样的:
2.5643762E-43  2.5643762E-43  2.5643762E-43  2.7185190E-43  2.5643762E-43
  2.5924022E-43  2.4102334E-43  2.4802983E-43  2.5503632E-43  2.6204281E-43
  2.3962204E-43  2.5924022E-43  2.5783892E-43  2.3541814E-43  2.4802983E-43
  2.6064151E-43  2.5503632E-43  2.6764801E-43  2.4943113E-43  2.7465450E-43
  2.5783892E-43  2.2000386E-43  2.6624671E-43  2.6904931E-43  2.6484541E-43
  2.4242463E-43  2.6344411E-43  2.5363502E-43  2.5924022E-43  2.8166099E-43
  2.4662853E-43  2.6904931E-43  2.3962204E-43  2.5223372E-43  2.5643762E-43
  2.6764801E-43  2.5783892E-43  2.8025969E-43  2.6344411E-43  2.6764801E-43
  2.6904931E-43  2.5924022E-43  2.6064151E-43  2.6484541E-43  2.6204281E-43
  2.4242463E-43  2.6904931E-43  2.7185190E-43  2.7465450E-43  2.8446359E-43
  2.8025969E-43  2.8025969E-43  2.5643762E-43  2.7325320E-43  2.8866748E-43
  2.3541814E-43  2.4102334E-43  2.3822074E-43  2.3401684E-43  2.4242463E-43
  2.2701035E-43  2.1159607E-43  2.2841165E-43  2.2420775E-43  2.2140516E-43
  2.2560905E-43  2.2560905E-43  2.2560905E-43  2.2000386E-43  2.1860256E-43
  2.2420775E-43  2.2701035E-43  2.3401684E-43  2.1860256E-43  2.3962204E-43
  2.2280646E-43  2.0458958E-43  2.2841165E-43  2.3681944E-43  2.2420775E-43
  2.0318828E-43  2.2140516E-43  2.2140516E-43  2.2701035E-43  2.3541814E-43
  2.1720126E-43  2.3822074E-43  2.0739217E-43  2.1860256E-43  2.2420775E-43
  2.2560905E-43  2.2140516E-43  2.3541814E-43  2.1579996E-43  2.2701035E-43

好奇怪~~明明应该一样的说啊~~
求助求助!!!!!!!!!!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-21 20:48:08 | 显示全部楼层
写的时候是整形,读的时候是实型,而且就不能用规范的unformatted?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-4-21 21:16:32 | 显示全部楼层

真的改成实型就好啦~O(∩_∩)O哈哈~ 刚刚入行的菜鸟,不太懂区别,因为我们总是用binary,求强人解答区别??
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-21 21:47:14 | 显示全部楼层
其实没什么大区别,就是更规范,增加程序的可读性,别人也更容易明白你的意思,其实你的程序有些不规范的地方,以后最好能改一下,尤其是implicit none,这个最好加上,否则写大程序很可能出错。
大家互相学习,一起进步吧。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-4-21 22:11:38 | 显示全部楼层
lqouc 发表于 2013-4-21 21:47
其实没什么大区别,就是更规范,增加程序的可读性,别人也更容易明白你的意思,其实你的程序有些不规范的地 ...

(⊙o⊙)嗯 谢谢啦。。。
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表