(1) fortran 中的数组

1、数组片段

Fortran中引用数组有三种方法:

数组名         代表数组中的所有元素

数组元素      代表数组中的某个元素

数组片段      代表数组中的若干元素,可以是连续的,也可以是分离的

 

1.1连续片段方法

数组名(下标偶对),下标偶对表示下标的起始和终止位置。

例如A(3:6)= 0;

print * ,A(3:6)

1.2 下标三元法,可以把不连续的元素组成数组片段。

格式:数组名(e1:e2:e3)  ,其中e1表示起始下标,e2表示终止下标,  e3表示间隔(步长).

e1省略时表示从下界开始,e2省略时表示到上界结束, e3省略时表示间隔为1。

 

例如: A (10:30:2),A(:20:4),A(8::10)

2、数组构成器及用途
数组构成器是左右两端有 "(/" 和 "/)" 定界的同类型数据的集合。

用途:可以代替DO循环的繁琐形式给数组赋初值,一般性赋值。

例如:有数组A(1:4),A = (/1.1,2.2,3.3,4.4/), 则
A(1)=1.1  ,  A(2)= 2.2  , A(3)=3.3  ,A(4)=4.4

常见形式有
(1)隐含DO法
A = (/ (sqrt(I),I=1,4) /)
(2)数组元素
A = (/ v(3),v(5),v(6)  /)
(3)数组片段
A = (/ V(3:9:3)  /)

 

3、数组的形式
(1)常数组
普通的数组
(2)可调数组
形式:
可以在维界表达式中出现整型变量
例如real,dimension(N:M)::C ,这里M,N是变量
用处:只可以在子程序中作虚数组用,并且维界变量必须列入程序的虚元中。
例如 subroutine sub(C,M,N)
     real , dimension(N:M)::C
(3)假定形状数组
形式:说明时不出现维界,只有冒号,例如:real, dimension(:)::C,(一维)或者real,dimension(:,:)::D,(二维)
用处:只可以在子程序中作虚数组用,用于和实数组结合,结合后自动具有实数组的结构。

(4)动态数组
维界可以在程序执行过程中改变。
使用步骤:
a、说明:real,dimension(:),allocatable::AL1,AL2
b、分配内存:allocate(AL1(M),AL2(6:N)).则AL1为AL1(1:M),AL2为AL2(6:N)
c、用deallocate语句释放内存:deallocate(AL1,AL2)

转载于:https://www.cnblogs.com/liyanwei/archive/2010/06/14/1758290.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值