Program ParamaterDefine
Implicit None
C FORTRAN变量名和关键字不区分大小写。但调用外部函数的话,需要在编译选项里指定
c 大小写等选项 因为链接器是区分大小写的
! 关于注释:在*格式中,只有!一种方法; 在固定格式中,除了!还可以用c或C或*,但必须写在前五个
! 字母,即绿线的左边。
* *和C是必须放在第一列的,!不必,另外73列以后的内容也属于注释
Integer I,J,K,L,M,N!整型,前面只能声明变量,不能给变量赋值,语句后面不用分号
Double Precision Area,Length,pi,R,YMJ,ZMJ,degree,SinAddCos,A(:)!双精度实型
DOUBLE PRECISION MyExp,y,x
Complex D,C!复数类型,如果含表达式则用CMPLX
Logical T,F!逻辑型,逻辑常量有“T”和“F”,“T”表示“.TRUE.”,“F”表示“.FALSE.”
Character* name,str*!字符型,N为字符串长度,可以在变量名称后重新指定长度
C DIMENSION IA(:) !使用I-N规则时用DIMENSION说明数组,也可在定义变量类型同时说明数组,说明格式为:
C 数组名(下标下界,下标上界),也可省略下标下界,此时默认为1,例:一维数组DIMENSION IA(:) 二维:A(:,:,:) parameter(pi=3.1415926)!参数语句,用来定义常量,在程序中应放在类型说明语句之后 YMJ(R)=3.14159265*R*R!应该放在所有可执行语句之前和有关类型说明语句之后,是非执行语句;
SinAddCos(degree)=SIN(degree)+COS(degree)!语句函数必须放在函数的赋值语句前,声明语句后
N=
Length=3.0
D=(8.76,-67.8E-3)!D=(8.76E+0.,-67.8E-3)为啥错误啊
C=Cmplx(3.0*N,6.0+Length)!有表达式,得用Cmplx
T=.TRUE.
F=.FALSE.
name='My name is zhubinglong!'! //是字符串连接符,/是换行
c 语句函数的调用,并输出结果
ZMJ=YMJ()
print * ,ZMJ
c 默认格式输出字符串
Write(*,*)'I LOVE YOU!'!默认格式输出(默认输出完成后换行)
Write(*,*) name
c 格式化输出
Write(*,)!
format(/) ! 1x表示一个空格;/表示换行;
c 循环给数组赋值,并格式化输出一维数组A
DO I=,,
A(I)=I**
CONTINUE
WRITE(*,) ('I=',I,'A=',A(I),I=,,)
FORMAT(1X,(A2,I2,1X,A2,F4.,3X))
C 尝试调用语句函数并输出结果
R=SinAddCos(pi)
WRITE(*,*) R
c 调用函数子程序 WRITE(*,*) '请输入x:'
READ(*,*) x
y=(MyExp(x)-MyExp(-x))/2.0
End Program ParamaterDefine
WRITE(*,)'Sinh(',x,')=',y
format(1x,a,f5.,a,e13.) !SUBROUTINE SinAddCos(degree)
!double precision rest
!rest=SIN(degree)+COS(degree)
!return rest
!END SUBROUTINE SinAddCos(degree)
FUNCTION MyExp(x)!或者:DOUBLE PRECISION FUNCTION MyExp(x)
DOUBLE PRECISION MyExp,t,s,x
INTEGER n
n=
t=
s=
do while (abs(t).gt.1e-)
n=n+
t=t*x/n
s=s+t
continue
MyExp=s
End
FORTRAN77基础代码
用fortran77
1.介绍几个基本语法学习:
http://micro.ustc.edu.cn/Fortran/ZJDing/
http://blog.sina.com.cn/s/blog_8e7709e101018mqd.html
http://blog.sina.com.cn/s/blog_6e0aa6420100pu9p.html
2.具体
https://wenku.baidu.com/view/7f656ad06529647d272852cd.html
可以看出,默认是按列输入的
3.子程序
Fortran77中默认传址,而不是传值
4.子例行程序
怎么没有在子程序中声明变量???
子例行程序默认也是传址
conmmon就像int一样,可以在多行声明,也可以在单行声明
额外发现:
c#写注释搜代码:http://www.360doc.com/content/14/0218/15/8772388_353542751.shtml
http://codesnippet.research.microsoft.com/# 插件地址:https://marketplace.visualstudio.com/items?itemName=VisualStudioPlatformTeam.DeveloperAssistant