5 fortran 程序设计5-数组

5 fortran 程序设计5-数组

ID:5411549

大小:713.50 KB

页数:57页

时间:2017-12-10

5 fortran 程序设计5-数组_第1页
5 fortran 程序设计5-数组_第2页
5 fortran 程序设计5-数组_第3页
5 fortran 程序设计5-数组_第4页
5 fortran 程序设计5-数组_第5页
资源描述:

《5 fortran 程序设计5-数组》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、七、数组数组定义(基本使用)数组赋值与运算(内容设置)数组的保存规则可变大小的数组及其它数组的应用数组是科学和工程计算问题中常见的向量和矩阵的反映和概括。数组在FORTRAN程序中有着重要的意义,在批量大的情况下,如果不利用数组就失去了计算机的优越性。数组是另一种使用内存的方法,配置一大块内存空间,用以存储一批数据。数组是类型相同的一组标量数据的有序集合,即要求这些数据都必须类型相同,并按某种确定方式排列。向量是一维数组,矩阵可看成是二维数组。类型可以是整型、实型、双精度型、逻辑型等任何一种。数组定义声明方法(例):DATATYPEARRAYNAME(size1,size2,size3…)

2、如:real::uwnd(359,180,9,12)real::stat(99,2),integer::statnum(99)组成数组的每一个元素称为数组元素数组的维数称为秩(rank),F90规定数组最多可以有7维;在某一维中元素的个数称为该维的长度(extent);数组中所有元素的个数称为数组的大小(size),它等于各维的长度的乘积,数组的大小可以为0。数组的形状(shape)取决于秩和每一维的长度每一维的大小都由一个下界和一个上界来指定,之间以冒号分开,即下界:上界维界表达式是整型的数学表达式,维界值可以是正、负或零,但维上界必须大于维下界的值。维长=上界-下界+1。声明数组时下界

3、可以省略,此时维下界为默认值1声明方法(严谨):DATATYPEARRAYNAME(下界:上界,…)如:real::uwnd(1:359,1:180,1:9,1:12)real::stat(1:99,1:2),integer::statnum(99)integer::stanum(0:98)数组(元素)的引用:例real::a(1:359)uwnd数组名称,指整个数组uwnd(2)指定下标,确切指定一个元素uwnd(7:10)引用数组的一部分元素uwnd(1:359:2)引用数组的部分元素(三元下标,分别表示:下界、上界和步长。三元下标只能算一个下标)数组片段:数组片段是数组所有元素集合的

4、一个子集。数组片段的元素可以是数组中任意的元素,它们不需连续或遵循某个规则。数组中的所有元素和片段的数据类型和种别都相同。如果指定数组的所有下标则得到的是数组元素(即标量),如果只指定部分下标则结果是部分数组元素的集合,即数组片段,数组片段本身也是数组。例:REALA(2,3,4)则A(1,2,3)是数组元素,而A(1:2,2,2),A(1,1,4:2:-1)都是数组片段数组赋值与运算赋初值1、用DATA赋初值:datavar/……/2、在声明变量时直接赋值(必须一次给齐所有初值)其它赋值举例:C1=(/4,8,7,6/)!标量表示C2=(/B(I,1:5),B(I:J,7:9)/)!数组

5、表示C3=(/(I,I=1,4)/)!隐DO循环C4=(/4,A(1:5),(I,I=1,4),7/)!混合表示INTEGERC(4)!可以用方括号代替括号和斜线,等价C=(/4,8,7,6/)!(/之间不能有空格C=[4,8,7,6]!与上等价INTEGERD(3)!下面两种格式等价D=(/1:5:2/)!三元下标格式D=(/(I,I=1,5,2)/)!隐DO循环格式数组的运算基本运算允许把整个数组或数组片段作为一个单独的对象进行运算。所有的算术运算符(+,-,*,/,**)、逻辑运算符(如.AND.,.OR.,.NOT.)和所有关系运算符(如.LT.,.EQ.,.GT.),以及许多内在

6、函数都可以接受数组名称作为参数并对数组元素逐一运算。例:INTEGER,DIMENSION(100)::even,odd,plu,min,tim,div,squeven=(/(2*i,i=0,49)/);odd=(/(2*i+1,i=0,49)/)plu=even+oddmin=even-oddtim=even*odddiv=even/oddsqu=even**2使用数组名作为参数的内在函数称为基本内在函数,例:REALA(5),B(5),C(5)INTEGERD(5)DATAPI/3.14159265/A=(/(REAL(I)*PI/180.,I=1,5)/)B=COS(A);C=SQR

7、T(A);D=CEILING(A*180.)当两个以上数组出现在赋值语句或表达式中时,数组的形状应该相同(称为相容)。例:A(2,3),B(2,3),C(2:3,6:8)相容;而D(4,5),E(5,4),F(5,2,2)则不相容如果数组片段指定的部分相容,也可用于表达式和赋值例:REALA(5),B(4,7)A=20.;B=5.;A=A-B(2,1:5)数组与数组数组的运算两个数组作算术操作的结果仍是一个形状相同的数组

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。