- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
fortran基础第11章
* 递归子程序的调用 在主程序中调用递归子程序时,应写明递归子程序的接口块,然后是CALL子程序名[([虚参名表])]。 * 递归子程序的例题 HANOI(汉诺)塔问题(略) * 数组:数组是一种数据结构。数组中所有元素类型相同,引用方式或者给出下标来确定一个元素,或者给出数组名代表所有元素,或者用下标三元组表示数组片段。 派生结构:空间任意一点的坐标可以用三个实数X、Y、Z来描述。但是就FORTRAN语言来说,X、Y、Z之间并无任何联系,只是程序员把这三个变量理解为坐标。如果换一种方式来表述点的坐标:把三个实型数据结合在一起,形成一个新的数据类型COORDINATE,这个类型就是派生类型。 链表结构:由派生结构定义一个节点,包含一个指针。 * 可以看出: 每个结点有两个域,即数据域(这里是一个数值)和指针域(用箭头表示)。 链表的第一个结点称为表头,指向表头的指针称为头指针。 最后一个结点称为表尾,它的结点指针域为空指针。 * 这里,第一句将当前结点current指向原链表的头结点,第二句将链表头指针指向当前插入的结点current,即结点current为现在链表的头结点。 * 删除的过程就是让前一个结点的指针绕过此结点指向下一个结点,然后释放这个结点的空间。例如,我们要在图11-6中,删除数值为27的结点,且经过搜索Q已经指向该结点,P指向它前面的一个结点。 * 删除的过程就是让前一个结点的指针绕过此结点指向下一个结点,然后释放这个结点的空间。例如,我们要在图11-6中,删除数值为27的结点,且经过搜索Q已经指向该结点,P指向它前面的一个结点。 * 例如下面的程序将输出逻辑值F PROGRAM TEST IMPLICIT NONE REAL,TARGET,DIMENSION (4)::A=(/1,2,3,4/) REAL, POINTER, DIMENSION (:) :: P, Q P = A (1 : 3) Q = A (2 : 4) PRINT *, ASSOCIATED (P, Q) END * 11.2.6 悬空指针和无法访问的内存 ⒈ 悬空指针 设P1和P2是两个同类型的指针变量,执行下列语句后会导致悬空指针。 ALLOCATE(P2) P1=P2 DEALLOCATE (P2) ⒉ 无名内存 设P1是一个指针变量,A是一个同类型的目标变量,执行下列语句后会导致无名内存。 ALLOCATE(P1) P1=A * 11.3 指针数组 指针数组定义的一般形式为: 数据类型,DIMENSION(:[,:]), POINTER::V 注意: 这里的数组V一定要定义为一个假定形状数组。 有了上面的说明,V可以指向任何一个一维数组,或二维数组。例如有下列语句: REAL,DIMENSION(:),POINTER::P REAL,DIMENSION(5,6),TARGET:: ARR P=ARR (4,:) 使P变成了数组ARR第四行的别名。如果对P执行赋值语句:P= 1,就是将数组ARR的第四行全部设置为1。当然,此处的目标数组ARR必须具有TARGET属性。 * 11.4 链表 11.4.1 链表的概念 链表是结点的序列。 结点:结点也叫数据元素,它是组成数据的基本单位。 结点分为两部分:一部分用于存储数据元素的值,称为数据域;另一部分用于存放下一个数据元素的存储结点的地址,即指向后继结点,称为指针域。 数据域 指针域 * 11.4.1 链表的概念 例如有三个整型数值结点的链表 L HEAD 13 27 39 * 结点的定义 每个结点至少有一个指针,用于指向下一个结点。结点可以用一个派生类型来定义: TYPE NODE INTEGER::VALUE TYPE(NODE),POINTER::NEXT END TYPE NODE * 链表的头结点 头结点:没有数据域,仅有一个指针域。 定义头结点的派生类型只有一个指向NODE类型的指针成员HEAD: TYPE LIST TYPE(NODE),POINTER:: HEAD END TYPE LIST * 链表的尾结点 表尾:由于它没有后继,该结点的后继指针NEXT指向空。 * 11.4.2 链表的创建 创建一个空链表。该链表不含任何结点,其头指针指向空指针。 HEAD * 11.4.2 链表的创建 可以用一个函数子程序NEW()来创建一个空链表: FUNCTION NEW( ) RESULT (NEW_LIST) TYPE(LIST):: NEW_LIST NU
您可能关注的文档
- 不同年龄推销对象的心理特点及推销策略研究--毕业论文概要.doc
- 不同给药途径对药物作用的影响概要.ppt
- EDA 冯金礼.docx
- eclipse3.7环境下svn的使用.docx
- 不同等级城市的服务范围概要.ppt
- ecourt用户基本操作手册.doc
- e7fe人类进步的关键.ppt
- EDA与VHDL实验指导书060438.doc
- EDA原理与应用 第二章.ppt
- EDA和CPLD实例程序总结.docx
- 浙江省温州市浙南名校联盟2025-2026学年高一上学期期中联考数学试题含解析.docx
- 26高考数学提分秘诀重难点34圆锥曲线中的定点、定值、定直线问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点35概率与统计的综合问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点31圆锥曲线中的切线与切点弦问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点30圆锥曲线中的弦长问题与长度和、差、商、积问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点29巧解圆锥曲线的离心率问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点28直线与圆的综合(举一反三专项训练)(全国通用)(含解析).docx
- 寡核苷酸药物重复给药毒性研究技术指南.docx
- 重组溶瘤腺病毒生产质量管理标准.docx
- 26高考数学提分秘诀重难点27直线与圆中常考的最值与范围问题(举一反三专项训练)(全国通用)(含解析).docx
最近下载
- 充电桩采购安装项目供货方案.pdf VIP
- VA ONE用户手册目录.pdf VIP
- 皮类药材栽培技术杜仲栽培技术_培训课件.ppt VIP
- 2023年军队文职考试《数学2+物理》真题及答案.docx VIP
- (高清版)DB50∕T 646-2015 大黄绿色种植技术规程 .pdf VIP
- 充电桩采购安装应急预案.pdf
- 成人脓毒症患者医学营养治疗指南(2025版).pptx VIP
- 《输气管道工程设计规范》(GB 50251-2015).docx VIP
- 2024-2025学年上海七宝中学高一上学期数学月考试卷及答案(2024.12).docx VIP
- 中国旺旺控股有限公司环境、社会及管治报告 2022、2023.pdf VIP
原创力文档


文档评论(0)