- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Fortran数组详细介绍
第七章 数组 数组的概念 数组的说明与引用 数组元素的存储结构 数组的输入输出 给数组赋初值 数组的应用 7.1 数组的概念 数组:把具有相同数据类型的一批数据看成一个整体 INTEGER,PARAMETER::N=5 INTEGER I REAL P(N),AVER=0 DO I=1,N READ(*,*) P(I) AVER=AVER+P(I) END DO AVER=AVER/N DO I,N PRINT(*,*) P(I)-AVER END DO END 7.2 数组的说明与引用 一、数组的说明 1. 用DIMENSION语句说明数组 格式:DIMENSION 数组说明符[,数组说明符]… 数组说明符:数组名(维说明符[ ,维说明符]… ) 维说明符的一般形式是:[维下界:] 维上界 下界为1时,可以省略不写,冒号也省略 。 维下界和上界都只能是整型常量表达式。维上界的值必须大于维下界的值。 例:IMPLICIT INTEGER(A-C), REAL(I,J) DIMENSION B(3:15), IX(10) 注意: (1) DIMENSION语句在程序单位的可执行语句之前。 (2)用DIMENSION语句说明数组时,需用类型说明语句或IMPLICIT语句指明数组的类型,否则数组的类型服从I-N规则。 例:DIMENSION JU(20),NAME(-10:10,1:2) REAL JU CHARACTER NAME 一维实型数组JU,有20个元素。二维字符型数组NAME,共有42个元素,每个元素的定义长度为1。 格式: 类型符, DIMENSION(维说明符[,维说明符]…) :: 数组名[,数组名]… 2. 用类型说明语句说明数组 格式: 类型符 数组说明符 [ ,数组说明符 ]… 例如:CHARACTER*6 CH(-10:10,5:9)*8 REAL KK(8) REAL(8) A(30) 3. 用DIMENSION语句和类型说明语句同时说明数组 例如: REAL(8),DIMENSION(0:10) :: A,B,C INTEGER,DIMENSION(4,5) :: D,E 三个双精度型数组A,B,C,各含有11个元素。两个整型数组D,E,各含有20个元素。 例如: REAL,DIMENSION(0:10) :: A,B(20),C(4,5,3) 说明A为A(0:10),而B为B(20),C为C(4,5,3)。 以数组名后面的维说明为准。 数组名 (下标 [ ,下标 ]…) 二、数组元素的引用 其中1:5:2的含义是从1变化到5,每次增加2。 三元表达式的形式是: 初值:终值:步长 其中步长为1时,步长可以省略。 允许对数组进行整体操作,例如: INTEGER , DIMENSION(1:5) :: A A(:)=0 !或写成 A=0,将A的全部元素赋为0 INTEGER , DIMENSION(4,5) :: A A(:,:)=10 !或写成 A=10,将A的全部元素赋为10 A(:,1:5:2)=470 !再将A第1,3,5列元素赋为470 7.3 数组元素的存储结构 B(1,1) B(2,1) B(3,1) B(2,4) B(3,4) B(1,2) B(3,2) B(2,2) A(2) A(3) A(4) A(10) A(1) 例:INTEGER A(10),B(3,4) 数组元素按列存放 7.4 数组的输入输出 一、 使用DO循环输入输出数组元素 INTEGER ::I, J REAL:: MAT(2, 3) DO I=1, 3 DO J=1, 2 READ(*,*) MAT(J, I) END DO END DO DO I=1, 2 DO J=1, 3 WRITE(*, 10) MAT(I, J) END DO END DO 10 FORMAT(1X, F6.2) END 特点:每执行一个输入语句输入一个数组元素值(一个数组元素值组成一个输入记录)。 每执行一个输出语句输出一个数组元素值(每一行输出一个数组元素值)。 数组元素按照在内存中的排列顺序一次全部输入输出。 二、以数组名作为输入输出项 INTEGER W(3, 3) READ(*,*) W !按列的顺序输入 WRITE(*, 10) W !按列的顺序输出 10 FORMAT(1X, 3I3) 输入:1,4,7,2,5,8,3,6,9 1 2 3 4 5 6 7 8 9 例:将矩阵存放在数组中并输出。 输出
文档评论(0)