登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
1Fortran不区分大小写
2 Fortran有5种基本数据类型,integer,real,character, logical, complex
3fortran fixed format格式中的变量赋初值一般用DATA,因为它不能用::
4real(kind=8) a这种格式只使用于Fortran90,Fortran77中要使用real*8或real(8)
5 FORTRAN中FREE与FIXED两种格式do循环的区别:Fortran95使用end do来结束循环。Fortran 77使用DO循环要麻烦一点,它不使用END DO来结束循环,而是使用行号来结束循环,程序代码要在DO的后面写清楚这个循环到哪一行程序代码结束。Fortran 77中,经常会使用CONTINUE这个命令来结束循环。因为CONTINUE这个命令没有实际的用途,刚好可以拿来做封装使用。
6 循环的流程控制:循环中的cycle命令相当于c++里的continue命令,用于结束一次循环。
循环中的exit命令好比c里面的break,用于结束循环
7 不使用do循环,单纯用GOTO语句也能设计循环程序,但不推荐使用GOTO语句
7 fortran有等价声明:即用equivalence(a,b),这样使得a,b使用同一块内存,这样可以节省内存,有时可精简代码。
8 fortran77中只能用单引号。(还有疑问,因为fixedformat能用双引号)
9 逻辑运算符
== /= > >= < <= !Fortran90用法
.EQ. .NE. .GT. .GE. .LT. .LE. !Fortran77用法
9 PAUSE,CONTINUE,STOP
pause暂停程序执行,按enter可继续执行
continue 貌似没什么用处,可用作封装程序的标志
STOP 命令用来结束程序,要谨慎使用
10 数组元素之间要用逗号分隔,而不能像matlab一样既可以用逗号也可以用空格,fortran的数组元素之间不能用空格。
11 数组的声明:Fortran 77中数组的声明,必须使用DIMENSION命令
Integer a; !先声明a是整型
Dimension a(10) !再声明a是大小为10的数组
Fortran 95中可以用简单的方法:
Integer a(10) !最简单的方法
Integer,dimension(10):: a !另一种方法
12 数组的赋值:
Fortran 77中数组的声明,可以使用DATA命令或隐含式循环来赋初值;
Fortran 95中可以直接设置初值;如:integer ::a(5)=(/1,2,3,4,5/);此时,括号和除号之间不能有空格;
13 与C不同,Fortran数组索引值默认从1开始,而且可以在声明时改变该规则,如integer a(-3:1) !索引值为-3,-2,-1 ,0,1
13 数组在内存中的存放顺序也与C不同(正好相反),如a(2,2)在内存中的存放顺序为a(1,1),a(2,1),a(1,2),a(2,2);原则是放低维的元素,再放高维的元素,此规则称为column major 矩阵输出时也是按列输出。。
14 Fortran的特色:隐含式循环
15 a,b都为数组,则可以这样用a=sin(b),(内部函数都可以这样用)
16 数组专用:
where命令形式上类似于if,但只用于设置数组
where.....elsewhere...elsewhere...endwhere(没有then)
FORALL是Fortran95添加的功能,只能用于数组操作
forall可以嵌套使用,还可以在forall中使用where,但where中不能使用forall
15 Fortran中传递参数的原理与c++不同,Fortran中是传址调用,就是传递时用参数和子程序接受时用的参数使用一个地址,尽管命名可以不同。
16 调用自定义函数前需要做声明,调用子程序则不需要。
17 Module中有函数时必须在contains命令之后
|