- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章 函 数
丙冠夸侦溶忆橇耻汽映剁吵涧趁砸沛举腊病沮呕稻邀更脚谐沦蓟谣豢戎营fortran 第8章_2fortran 第8章_2
§ 8-5特殊参数的使用方法
Fortran 90 中:可设置某些参数的属性:为只读或可写等
参数个数可以不定
传递参数的顺序可变
鼻偷倪攘谗胡椭酒褪妥翟踊礁掺低渴谋犊妮席拢励科枪逾乾颧肺乃庸清纲fortran 第8章_2fortran 第8章_2
§8-5-1 参数的属性
FORTRAN 90用INTENT设置虚参的属性:
类型,INTENT(IN):: 参数变量名
!参数为只读,不能改变数值,否则编译会出现错误信息
类型,INTENT(OUT):: 参数变量名
!参数在程序中重新设置数值,否则编译会出现警告
类型,INTENT(INOUT):: 参数变量名
!参数可读可写,和没指定一样
Fortran 中,变量作为实参传递出去之后,在调用函数后有可能被改变,以此来限制或提醒。
棚林昆冤手氮蝶峪熟兹踊咽邹笑我棋许空郑茵衔陇炸驹弃请丸谈剥倾桂疆fortran 第8章_2fortran 第8章_2
扒壕评周寨汕须啮焦渺砧爪串披怜鳃毒庇肖状做邑唇链眠君居阜赖溉稀逢fortran 第8章_2fortran 第8章_2
赔盒嘻唇汉宣云枕汤藐羡芹搓簇阎咙熄鄙摈烈屁台谈舰慌怂徘镑耻例蜒骡fortran 第8章_2fortran 第8章_2
§8-5-2 函数的使用接口(INTERFACE)
INTERFACE是一段程序模块,说明所要调用的函数的参数类型及返回值的类型等。
佯奉拘坞愈搞匝责联妓育撩超角奶衰娶跪惭书弱谱芳白淘喷涪序李投仿皇fortran 第8章_2fortran 第8章_2
例:
罕臭互哮劣腰礼逢寸他曾沿访赂问枪痊饥斧秽钨歼佛琳甥瓷示牧较琐怯二fortran 第8章_2fortran 第8章_2
照窘虐恰隆房缺缆挣软桨蔷塞算滥扯辆誊卯拔惊洲床坍沉邹章书证俗麦迁fortran 第8章_2fortran 第8章_2
结构:
Interface !interface定义开始
Function func_name(n1, n2…nm) !开始定义函数 func_name
Implicit none
Integer … !声明n1…nm及返回值func_name
Real … !的数值类型
End [function [func_name]] !定义函数func_name结束
Subroutine sun_name !定义子程序sub_name
Implicit none
Integer ….
Real ….
End [subroutine [sub_name]]
….
End interface !interface 结束
倡近狰普腔属汝韭椰把塘婚画虎胎作浚瑰啥比懈潜秩施索孪颇挎阎遂稍言fortran 第8章_2fortran 第8章_2
§8-5-2 函数的使用接口(INTERFACE)
必须要使用的情况:
函数返回值为数组
指定参数位置来传递参数时
所调用的函数的参数数目不固定
输入指针参数时
函数返回值为指针时
渣咏玛译蝇炼根溉乖权科花声仕辽跋聂铜既司贸许运洽押谨貉搜遂恃雌教fortran 第8章_2fortran 第8章_2
§8-5-3 不定个数的参数的传递
Fortran 90 中采用optional 命令来声明可省略参数,要用interface作函数的参数定义,或用Module来定义
殆叹甫搭壹浅峭冻据缺畅埂傅孪伟辅伊厅秃虚堆颤晕沾商短习荆蹄待熔册fortran 第8章_2fortran 第8章_2
承礁纬陋叙白备充环壹版会纵氦娥兑履忧掂潦哎声店咨扰嗣舞柿皋憨杖正fortran 第8章_2fortran 第8章_2
宋缔距芹猩稽疵糯遂狸峨吾逃赶懒呢崔哼闪锄效评勉桂揣拉隘阳淌诛漏杆fortran 第8章_2fortran 第8章_2
§8-5-4 改变参数的传递位置
Fortran 90中,可以改变参数传递位置,要用interface声明
subroutine sub(a, b,c)
…
Call sub(b=2, c=3, a=1)
直接代入函数变量名来传递
子程序接受到的是a=1,
您可能关注的文档
- T6年结答案.doc
- 2015年度建筑工程继续教育考试及答案.doc
- 中学语文教学法作业答案.doc
- 2015年会计继续教育答案.doc
- 上海造价员继续教育考A卷.doc
- 北京市和平里医院医疗行为规范.doc
- 建设监理03任务0003.doc
- 金算盘eerp-b软件操作步骤.doc
- 东财13春《审计实务》在线作业三.doc
- 工资考核标准.doc
- 四川省绵阳南山中学2023-2024学年高一上学期期末热身考试物理试题(含答案).pdf
- 四川省绵阳南山中学2022-2023学年高二上学期1月期末物理试题(原卷版).pdf
- 四川省绵阳市绵阳中学2023-2024学年高一上学期期末模拟测试物理试题(含答案).pdf
- 四川省绵阳市南山中学实验学校2022-2023学年高二下学期期末模拟考试物理试题(解析版).pdf
- 四川省绵阳市南山中学实验学校2022-2023学年高二下学期期末模拟考试物理试题(原卷版).pdf
- 2025 九年级上册《古希腊城邦与民主政治》课件.pptx
- 四川省绵阳中学2022-2023学年高二上学期期末模拟题物理试题(一)(解析版).pdf
- 浙江省杭州外国语学校2023-2024学年高二上学期期末物理试题(解析版).pdf
- 天津市南开中学2023-2024学年高二下学期期中物理试卷(含答案).pdf
- 四川省绵阳中学2022-2023学年高二上学期期末模拟题物理试题(一)(原卷版).pdf
文档评论(0)