(5)不能利用等价语句建立矛盾的等价关系。 6 如: real a(10) equivalence(x, a(1),(x, a( 3)) 如 real a(5), b(10) equivalence (a(0),b(2)),(a(3),b (3)) 练习:教材p301习题一、习题二。 习题 a(1) 1. dimension a(5),b(3) a(2) b(1) equivalence (a 3),b(2)) a a(4) b(3) a(5) §1等价语句 2021/2/24
6 2021/2/24 ⑸ 不能利用等价语句建立矛盾的等价关系。 如: 如: 练习:教材p301习题一、习题二。 §1 等价语句 real a(10) equivalence ( x, a(1) ), ( x, a(3) ) real a(5), b(10) equivalence ( a(1), b(2) ), ( a(3), b(3) ) 1. dimension a(5), b(3) equivalence (a(3), b(2)) 习题一 a(1) a(2) a(3) a(4) a(5) b(1) b(2) b(3)
2 dimension e(2, 2, 2), f(5) 3. integer i(3) equivalence (e(2, 1, 2), f(4 )) character*2 c(5) real r(8) e(1,1,1) equivalence (r(2), c(2)),i, c) e(2,1,1) (1)=) e(1,2,1) f(1) 2) c(2)}i(2 c(3)}(3) e(2,2,1) f(2) ……… c(4) c(5) e(1,1,2) f(3) r(4) ………… e(2,1,2) f(4) e(122 f(5) r(5) e(22,2) r(7E r(8)1∷ §1等价语句 2021/2/24
7 2021/2/24 c(1) 2. dimension e(2,2,2), f(5) equivalence (e(2,1,2), f(4)) §1 等价语句 e(1,1,1) e(2,1,1) e(1,2,1) e(2,2,1) e(1,1,2) e(2,1,2) e(1,2,2) e(2,2,2) f(1) f(2) f(3) f(4) f(5) 3. integer i(3) character*2 c(5) real r(8) equivalence (r(2), c(2)), (i, c) r(1) r(2) r(3) r(4) r(5) r(6) r(7) r(8) c(2) c(3) c(4) c(5) i(1) i(2) i(3)
4. integer i(6) 8 character*8 d(4 equivalence (d(1),r),d(2), c),(d( 3),i(2)) d(1){ d(2) d(3) "" ……………… 4 5 }i(6) d §1等价语句 2021/2/24
8 2021/2/24 §1 等价语句 4. integer i(6) character*8 d(4) equivalence (d(1), r), (d(2), c), (d(3), i(2)) d(1) d(2) d(3) d(4) r c i(2) i(3) i(4) i(5) i(1) i(6)
§2公用语句(p294-299) 9 common语句的作用是使不同程序单元的变量共用同 一个存储单元,从而使这些变量具有相同的值,实现不同 程序单元之间的数据传递。 不同程序单元之间的数据传递有两种实现方式:④采 用实参和虚参结合的形式实现;②利用 common语句实 现。 在一个 Fortran程序运行时,不同程序单元的变量共用 的存储单元放在内存中该程序的一个公用数据区内,称为 公用区。 公用区实现的是一种全局变量的功能,只不过在不同的 程序单元中变量的名字不同而已。 52公用语句 2021/2/24
9 2021/2/24 §2 公用语句(p294-299) common语句的作用是使不同程序单元的变量共用同 一个存储单元,从而使这些变量具有相同的值,实现不同 程序单元之间的数据传递。 不同程序单元之间的数据传递有两种实现方式:① 采 用实参和虚参结合的形式实现;② 利用common语句实 现。 在一个Fortran程序运行时,不同程序单元的变量共用 的存储单元放在内存中该程序的一个公用数据区内,称为 公用区。 公用区实现的是一种全局变量的功能,只不过在不同的 程序单元中变量的名字不同而已。 §2 公用语句