爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 阿南

[参考资料] Fortran知识普及贴,不定时更新

[复制链接]

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:01:25 | 显示全部楼层
设置变量的初值
变量内容并不一定要在程序执行时才设置,可以在声明时同时给予初值。在Fortran90偶那个,在设置变量初值时,直接把数值写在声明的变量后面就行了。使用这个方法来设置初值是,不能省略声明中间的那两个冒号(Fortran90)
在fortran77中则要使用Data命令设置初值
Fortran 90        Fortran 77
program ex90
implicit none
integer ::a=1
real ::b=2.0
complex ::c=(1.0,2.0)
character (len=20) ::str="Hello Acuzio!"
write (*,*) a,b,c,str
end        program ex77
implicit none
integer a
real b
complex c
character (len=20) str
data a,b,c,str/1,2.0,(1.0,2.0),’Hello ‘/
write (*,*) a,b,c,str
end
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:02:38 | 显示全部楼层
刚才格式有点乱,重新发一下
Fortran 90
program ex90
implicit none
integer ::a=1
real ::b=2.0
complex ::c=(1.0,2.0)
character (len=20) ::str="Hello Acuzio!"
write (*,*) a,b,c,str
end
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:02:47 | 显示全部楼层
Fortran 77
program ex77
implicit none
integer a
real b
complex c
character (len=20) str
data a,b,c,str/1,2.0,(1.0,2.0),’Hello ‘/
write (*,*) a,b,c,str
end
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:02:58 | 显示全部楼层
等价声明(equivalence)
把两个以上的变量,声明它们使用同一个内存地址,就是“等价声明”。使用同一个内存位置的变量,只要改变其中一个变量,就会同时改变其他变量的数值
Integer a,b
Equivalence(a,b)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:03:08 | 显示全部楼层
Fortran 90 的自定义数据类型
使用关键字:type
Type ::person
Character(len=30) ::name
Integer ::age
Integer ::length
Integer ::weight
End type person
Type(person) ::a !声明一个person类型的变量
a%name !引用person中的name
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-7-6 15:03:20 | 显示全部楼层
Kind的使用
Kind描述如果搭配上一些Fortran90的库函数,可以增加程序代码的“跨平台”能力
Fortran 90提供库函数来判断所要记录的数值值域范围所需要的kind值
Selected_int_kind(n) : 返回如果想要记录n位整数时,所应声明的kind.返回-1时,表示无法提供所想要的值域范围
Selected_real_kind(n,e) : 返回如果想要能够记录具有N位有效位数、指数达到e位的浮点数所需要的kind值。返回-1表示无法满足所要求的有效位数、返回-2表示无法满足所要求的指数范围、返回-3表示两者都无法满足
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-3-7 15:42:36 | 显示全部楼层
阿男啊
你怎么就TJ了呢
这个习惯可不好啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-4-8 18:00:51 | 显示全部楼层
太强大了,一定要顶一下,继续期待
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-2-27 23:13:37 | 显示全部楼层
这个入门的人可以参考参考呵呵
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-8-5 19:26:46 | 显示全部楼层
  read (1,100,advance='no')  x  这种代表什么意思呢
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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