数组说明语句必须放在所有可执行语句与DATA语句之前。
2.数组在内存中的存储形式
在FORTRAN中,数组的各元素是按顺序存储在计算机内存单元中的。特别需要注意的是2维和2维以上的多维数组中,各元素是以列为主存储的。
例如,有一个二维数组I(1:2,1:3),该数组可以写成数表的形式
I (1, 1) I (1, 2) I (1, 3) .
I (2, 1) I (2, 2) I (2, 3)
各元素的值为I(1,1)=1,I(1,2)=2,I(1,3)=-1,I(2,1)=20,I(2,2)=40,I(2,3)=50,在内存中存放的顺序是I(1,1),I(2,1),I(1,2),I(2,2),I(1,3),I(2,3),如果按内存存放顺序将这个数组的元素打印出来,数据的顺序将是:1, 20, 2, 40, -1, 50
其他多维数组中的元素也是按同样规则存储的,即先存储第1列,再存储第2列,以此类推,最后存储数组中的最后一列。
(五)各种运算符及其运算的优先级
1.算术运算符。FORTRAN有五个算术运算符,它们是:
加法运算符 +
减法运算符 -
乘法运算符 *
除法运算符 /
乘幂运算符 * *
这五个算术运算符的运算顺序是:
(1)乘幂运算符* *优先级最高;
(2)乘法与除法运算符*,/优先级次之; ·
(3)加法与减法运算符+,—优先级最低。 ’
对于同一优先级的两个运算符,按“先左后右”的原则进行计算。
2.关系运算符。FORTRAN有六个关系运算符,用于比较两个表达式相等或不等。它们是:
大于 .GT.
大于或等于 .GE.
小于 .LT.
小于或等于 .LE.
等于 .EQ.
不等于 .NE.
经过关系运算符比较后,得到一个逻辑型的值。例如,整型变量I的值为10,J的值为12,则I.LT.J的结果为“真”(.TRUE.),而I.EQ.J的结果为“假”(.FALSE.)。
3.逻辑运算符。FORTRAN有五个逻辑运算符,它们是: 。
逻辑与 .AND. 两个逻辑型量都为“真”时,其值为“真”,否则为“假”;
逻辑或 .OR. 两个逻辑型量都为“假”时,其值为“假”,否则为“真”;
逻辑非 .NOT. 一个逻辑型量为“真”时,其值为“假”,否则为“真”;
逻辑等 .EQV. 两个逻辑型量等值时,其值为“真”,否则为“假”;
逻辑不等 .NEQV. 两个逻辑型量不等值时,其值为“真”,否则为“假”。
逻辑运算符中,除了逻辑非运算符.NOT.只有一个运算对象外,其余四个逻辑运算符均有两个运算对象。
逻辑运算符的优先级如下;
(1).NOT.
(2).AND.
(3). OR.
(4). EQV.与.NEQV. 这两个运算符按照先左后右的原则进行运算。
三、赋值语句的一般格式为:
变量名=表达式
其中,连接变量名和表达式的符号“=”称为赋值号。在,FORTRAN 77中,有三种赋值语句:算术赋值语句,逻辑赋值语句和字符赋值语句。
(一)算术赋值语句
1.算术赋值语句中赋值号右边是算术表达式。算术表达式可以是单个变量或数组元素,可以是用算术运算符号连接起来的数值计算过程。
(1)算术表达式中的各个数据量(常量或变量)的类型一般应该一致。如果不一致,FORTRAN程序在运行中先将其进行转换,再进行计算。例如实型变量和整型变量进行计算时,整型变量的数值先被转换为实型。
(2)算术表达式计算中,特别应注意两个整型量之间的除法(称为整除)。例如,算
术表达式10.0—2/4*10.0的计算过程是10.0-0*10.0=10.0—0.0=10.0
如果表达式写为10.0—2/4.0x10-0,则计算过程是
10.0-2.0/4.0* 10.0=10.0—0.5* 10.0=5.0
因为2/4是整除,其结果为0,而进行2/4.0的计算时,整型量2先被转化为实型。
2.算术赋值左边只能是数值型变量名或数值型数组元素。如果赋值号左边的变量与
右边的表达式类型不一样时,系统将自动把右边表达式计算的结果转换为与左边变量的类型一致后再赋给该变量。