听课
课程与PC端同步更新,充分利用零碎时间。做题
海量精选试题,想练就练,瞬间提分。答疑
海量精选试题,想练就练,瞬间提分。直播
讲师大咖面对面,有问有大收获多。(四)子程序
1.子程序的结构
一个子程序是一个独立的FORTRAN程序单位。
子程序的第一个语句必须是SUBROUTINE语句,最后一个语句必须是END 语句。 即子程序的一般结构为:
SUBROUTINE子程序名(形参表)
语句块
[RETURN]
END
子程序名的命名规则与普通变量相同。但是子程序中的子程序名不能用于返回数值,这与函数子程序是不同的。因此,子程序名没有类型,它不能在本程序单位中使用。 SUBROUTINE 语句中的形参表可以省略。这时子程序名后的括弧不要保留。对子程序的其他有关规定与函数子程序相同。
2.子程序的调用
子程序调用通过CALL 语句实现。其形式为:
CALL子程序名(实参)
其他有关对子程序的调用规定与函数子程序相同。
八、程序单位间的数据传递
(一)虚实结合
虚实结合又称哑实结合,是各程序单位(主程序和各种过程如函数子程序)之间传递数据的一种重要途径。
1.变量的虚实结合
当子程序等过程的形参为变量时,则在调用时所对应的实参可以是类型相同的常数、变量、数组元素或表达式;子程序调用后,其运行的结果通过这些实参返回到调用者。在FORTRAN77中,当形参变量所对应的实参是变量或数组元素时,则它们之间的结合方 式是地址结合;而当形参变量所对应的实参是常数或表达式时,其结合方法对于不同的 FORTRAN系统有可能是不同的。