函数与子例行程序.pptVIP

  • 9
  • 0
  • 约1.59万字
  • 约 45页
  • 2021-12-11 发布于广东
  • 举报
苏州科技大学计算中心 9.4 内部子程序/概述 9.4 内部子程序 FORTRAN90提供标准子程序、语句函数、内部子程序(内部函数、内部子例行程序)等。 内部子程序是包含在程序 单元CONTAINS结构中用户 自定义的函数和子例行程 序。只有定义它们的程序 单元才能调用它们。 PROGRAM main INTEGER add PRINT*,add(5,3) END PROGRAM main FUNCTION add(m,n) INTEGER m,n,add add=m+n END FUNCTION add FUNCTION add(m,n) INTEGER m,n,add add=m+n END FUNCTION add PROGRAM main INTEGER add INTEGER*,add(5,3) END PROGRAM main PROGRAM main PRINT*,add(5,3) CONTAINS FUNCTION add(m,n) INTEGER m,n,add add=m+n END FUNCTION add END PROGRAM main 概述 内部函数定义 内部函数说明 内部函数调用 内部子例行 程序定义 内部子例行 程序说明 内部子例行 程序调用 第九章 函数与子例行程序 第二十九页,共45页 苏州科技大学计算中心 9.4 内部子程序/内部函数定义 内部函数子程序,简称内部函数,放在CONTAINS结构中。 内部函数只产生一个结果,由函数名返回。 内部函数定义一般格式: 内部函数定义→ [类型] FUNCTION 函数名([形式参数表]) {说明语句部分} {执行语句部分} END FUNCTION [函数名] 例如: REAL FUNCTION add(m,n) INTEGER m,n add=m+n END FUNCTION add (示例1)(示例2) FUNCTION add(m,n) INTEGER m,n,add add=m+n END FUNCTION add 9.4 内部子程序 概述 内部函数定义 内部函数说明 内部函数调用 内部子例行 程序定义 内部子例行 程序说明 内部子例行 程序调用 第九章 函数与子例行程序 第三十页,共45页 苏州科技大学计算中心 9.4 内部子程序/内部函数说明 关键字FUNCTION前面可指定内部数据类型,如:INTEGER、REAL、COMPLEX、CHARACTER或LOGICAL等。如果没指定,则按I-N规则或类型声明语句声明类型。 形式参数表称为哑元表, 无形参,则圆括号不能省略。 函数体位于FUNCTION语句和END FUNCTION语句之间。 说明部分同主程序,说明形参、变量等类型。 执行部分同主程序,进行数据处理。 例:计算X=2.5时多项式值 P5(x)=5.0x5+2.5x4+4.4x+3.5 P3(x)=3.4x3+1.5x2+1.76x+3.5 调用计算 pnx(5,A,2.5) pnx(3,A,2.5) FUNCTION pnx(N,A,X) INTEGER N REAL A(1:N+1),X,pnx S=A(1) DO I=2,N+1 S=S*X+A(I) ENDDO pnx=S END FUNCTION 9.4 内部子程序 概述 内部函数定义 内部函数说明 内部函数调用 内部子例行 程序定义 内部子例行 程序说明 内部子例行 程序调用 第九章 函数与子例行程序 第三十一页,共45页 苏州科技大学计算中心 9.4 内部子程序/内部函数调用 调用格式要求同标准函数、语句函数。作为操作数用。 一般格式:F(a1,a2,…,an)F为函数名,ai为实在参数。 实在参数可是表达式、普通变量、下标变量、数组名、内部函数引用、外部函数引用以及外部函数名和子程序名等。 如果定义内部函数无形式参数,其引用形式为:F( )。 内部函数执行过程: 若实在参数为表达式,则先对表达式求值。 实在参数与相应的形式参数结合,将实参值传递给对应形参。 经过形实结合,形式参数获得了所需要的值,然后,立即执行内部函数体。 在执行函数体的过程中,若遇到RETUR

文档评论(0)

1亿VIP精品文档

相关文档