系列视频教程 - fortran实用编程 - fortran coder.pptVIP

  • 3
  • 0
  • 约4.61千字
  • 约 37页
  • 2017-09-02 发布于天津
  • 举报

系列视频教程 - fortran实用编程 - fortran coder.ppt

系列视频教程 - fortran实用编程 - fortran coder

特殊用法 递归子程序: Fortran 实用编程 Fortran Coder 研讨团队 系列视频教程 关于 Fortran Coder Fortran Coder 始于2006年,是一个以科学计算编程为主题的非盈利性研讨团体。大多数由各行业高等学府学生,研究人员及生产一线的工作人员组成。 研讨内容涉及:Fortran77/90/95/2003/2008语法规范,各平台32位及64位编译器,IMSL,MKL,Lapack 等数学函数库,MPI,OpenMP,Coarray 并行及高性能计算,winteracter / DisLin / Matfor / GTKFortran 等绘图及界面库。 关于本套视频 本套视频以解决实际问题为主要目的,旨在为您解答课本上较少涉及到的实际问题。通过本套视频,您会更容易了解: 如何查找错误?如何解决错误? 如何学习 Fortran2003 和 Fortran2008 语法? 如何用最通俗易懂的写法解决实际问题? 如何看懂别人的优秀代码并为自己所用?如何让自己的代码更优美、更普适? 本套视频由 Fortran Coder 研讨团队录制,供所有 Fortran 程序员和学习者免费自由的观看,您可随意的传播它。但请保证视频完整性。 我们将会不定期的更新本套视频,请持续关注我们的网站、QQ群! 同时,如果您对 Fortran 相关有自己的见解,并愿意通过录制视频的方式与其他人分享,请联系我们! 上节要点回顾 聚合数据和元数据类型 Fortran语言擅长的是数值计算,而数值计算中最重要的是数组,请大家对数组的定义和访问方式(元素和连续片段)一定要详细的阅读和了解相关的内容。 结构体是Fortran语言在数值计算方面外的重要扩展,是成为通用编程语言的重要扩展 类是在结构体基础上,向面向对象特性的延伸 第八讲 基础篇 第八讲 语法之函数和子例行程序 讲解人:雪球 gao@ 讨论QQ群:2338021 1 函数和子例行程序 2 虚参和实参 3 传递数组和结构体 目 录 4 特殊用法 函数和子例行程序 在数学上,函数是两个集合的映射关系,对于集合 X 中每一个元素,在集合 Y 中都有唯一的 Y 与之对应 函数和子例行程序 计算机编程里的函数,是对数学概念函数的扩展。 此外,它也作为引导程序执行流程的重要方式! 函数和子例行程序 使用函数的优点: 将长过程拆分成若干小的过程,分别实现,有利于代码的逻辑结构 封装过程,使得函数的使用者不必了解内部实现细节 一次书写,多次调用,便于修改和维护 函数内部与调用者是隔离的,不能直接使用调用者的变量! 函数的局部变量在函数返回后丢失,下次进入时它们的值不确定! 缺点:牺牲很小一部分效率(inline展开) 函数和子例行程序 返回变量 = 名称([实参1,实参2......]) [形容词][返回类型] Function 名称( [虚参1 ,虚参2 ......] ) [虚参的声明] [局部变量的定义] 函数内部实现 名称 = 返回值 [return] End [Function [名称]] 典型的函数的书写和调用: 函数和子例行程序 call 名称([实参1,实参2......]) [形容词] Subroutine 名称( [虚参1 ,虚参2 ......] ) [虚参的声明] [局部变量的定义] 函数内部实现 [return] End [Subroutine [名称]] 典型的子例行程序的书写和调用: 函数和子例行程序 函数和子例行程序的区别: 函数 子例行程序 有返回值 无返回值 调用 var = 函数名( ) 调用 call 子程序名( ) 可以通过虚参输出数据 可以通过虚参输出数据 允许有多个输出数据 允许有多个输出数据 可以包含文件操作 可以包含文件操作 由于 Fortran 是默认传址的,所以可以通过虚参输出数据达到返回值的作用 因此,函数和子例行程序其实没有什么区别。 1 函数和子例行程序 2 虚参和实参 3 传递数组和结构体 目 录 4 特殊用法 虚参和实参 虚参和实参是调用者与子程序互换数据的最直接方式: 调用者指定实参(actual arguments 也叫实元) 子程序指定虚参(dummy arguments 也叫哑元,形参) Subroutine 结婚( 男方 , 女方 ) call 结婚( 郭靖 , 黄蓉 ) call 结婚( 梁山伯 , 祝英台 ) 虚参和实参 虚参和实参,一般按顺序结合。实参会传递到子程序中,成为虚参! 传递的方式,有两种:传址(By R

文档评论(0)

1亿VIP精品文档

相关文档