- 1、本文档共56页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FORTRAN中的数组.ppt
第9章 Fortran中的数组 数组是Fortran语言中功能最为强大、运用最为灵活的一种数据结构。数组(ARRAY)在科学和工程计算中通常用来表示矩阵和向量。同一般的变量声明相比,数组能够同时保存多个数据。它是一种使用大规模数据的方法。配合Fortran语言中的数组操作,可用于对大量不同的数据进行处理。在存储结构上,数组占用一片连续的存储单元。程序中通过数组索引来对数组元素、片断进行操作。 9.1 数组的定义 要在程序中使用数组,需要首先在变量声明中进行数组定义。数组定义规定了数组的维数和大小,以及数组所能保存的数据类型。在程序中,通过数组引用来对数组、数组元素或者数组片断进行操作。 数组是类型相同、种别一致的一组变量的有序集合。它可以是整型、实型、双精度型、复型、逻辑型、字符型以及自定义类型等中的任意一种。组成数组的每一个变量被称为数组元素,并由唯一的下标来进行标识。数组定义说明了数组所能保存的数据类型、数组的维数、维的范围和数组的大小。本节主要介绍Fortran中数组定义的几种方式。 9.1.1 定义形式一 第一种数组定义形式的语法格式如下所示。 类型说明 [::] 数组名([下标下界:]下标上界[,…])[,…] 该定义形式通过类型说明来显式声明数组的数据类型,并通过下标下界和下标上界来规定数组中某一维的范围。下标下界和下标上界共同组成了维说明符。当维说明符省略下标下界时,默认所在维的下标从1开始。如下代码都是合法的数组定义。 REAL :: A(1:2,2:4) INTEGER B(10) 9.1.2 定义形式二 第二种数组定义形式的语法格式如下所示。 DIMENSION [::] 数组名([下标下界:]下标上界[,…])[,…] [类型说明 [::] 数组名[,…]] 该定义形式通过DIMENSION语句来进行数组的定义,通过下标下界和下标上界来规定数组中某一维的范围。在第二行通过类型说明来显式声明数组的数据类型。当省略类型说明时,采用默认的“I-N”规则来对数组的数据类型进行定义。如下代码合法的对数组进行了定义。 DIMENSION :: A(10), B(2:11) INTEGER :: A 9.1.3 定义形式三 第三种数组定义形式的语法格式如下所示。 DIMENSION([下标下界:]下标上界[,…]) [::] 数组名[,…] [类型说明 [::] 数组名[,…]] 该定义形式通过DIMENSION语句直接说明了数组的维数和维的范围。这种形式定义的数组全部具有相同的维数和大小。如下代码表示了如何采用上述形式进行数组的定义。 DIMENSION(10, 4:10) :: A, B, N INTEGER :: A REAL(8) :: N 9.1.4 定义形式四 第四种数组定义形式的语法格式如下所示。 [类型说明,]DIMENSION [::] 数组名([下标下界:]下标上界[,…])[,…] [类型说明,]DIMENSION([下标下界:]下标上界[,…]) [::] 数组名[,…] 该定义形式可以说是前三种定义形式的综合形式。通过在DIMENSION语句前引入类型说明来显式的说明数组的数据类型。下列代码演示了此种形式的数组定义。 REAL, DIMENSION :: I(10), M(10,5) INTEGER, DIMENSION(10) :: A, C 9.1.5 数组定义的特点 上述数组定义的形式中,中括弧内的部分可有可无。数组定义语句必须出现在所有可执行语句之前。除了上述基本的定义形式外,在Fortran77中可以使用COMMON语句,在Fortran90中可以用POINTER语句、ALLOCATABLE语句等对数组定义进行加强。 在前面所述的四种定义形式中,定义形式因简洁直观而常见于实际使用中。此外,如下问题是在实际编程中应该注意的。 在前面所述的数组定义中,I(10)、M(10,5)、A、C等称为数组说明符。在同一个说明语句中有多个数组说明符时,用逗号进行分隔。 数组说明符中的I、M、A、C等是数组名,其取名规则与变量相同并且不应与程序中的其他变量同名。在同一个程序单元中,一个数组名只允许定义一次,不能重复定义。例如下面的数组定义是错误的。 INTEGER :: A(10), A(10,20) 9.2 数组的引用方式 数组经过定义之后,就可以在程序中使用了。在Fortran77标准中,数组只允许在输入输出语句中进行整体操作。在其他场合,只能对数组的元素通过下标索引的方式逐个进行操作。到了Fortran90标准,这一限制被大大放宽了。数组除了能够进行整体操作以外,还能对数组中的片断和数组的整体进行操作。这进一步增强了Fortran语言在数值处理方面的能力。Fortran中数组的
文档评论(0)