注:参考《Fortran95程序设计》彭国伦等
前言
数组(ARRAY)是另外一种使用内存的方法,可以用来配置一大块内存空间。处理大量数据时,可以配合循环等功能,用很简单的程序代码来处理。
一、一维数组
数组可以一次声明出一长串同样数据类型的变量(数组也是一种变量)。
// An highlighted block
integer,parameter::a=5
integer::s(a)
integer i //索引值
do i=1,a
write(*,"('n=',I2)")i
read(*,*)s(i)
end do
一维数组的声明方法:
"integer::s(a)"
//"Datatype name(size)":size为常数
二、二维数组
声明数组大小时,如果使用两个数字,它就变成二维数组。使用二维数组,要给两个坐标索引值。(二维数组也可用来当做矩阵使用)
integer,parameter::a=2
integer,parameter::b=2
integer::s(a,b)
integer i
integer j
do j=1,b
do i=1,a
write(*,"('n= ',I2,'of c',I2)")i,j
read(*,*)s(i,j)
end do
end do
二维数组的声明方法:
"integer::s(a,b)"
//"Datatype name(size1,size2)"
//size1,size2为常数
三、多维数组
声明数组大小时,如果使用多几个数字,它就变成多维数组。使用二维数组,要给对应维度的坐标索引值。
多维数组的声明方法:
"integer::name(D1,D2,...,Dn)" !n维数组
四、另类数组
正常情况下,数组的索引值都是由1开始,例如:
"integer a(5)" ! 这个数组能使用的是a(1),a(2),a(3),a(4),a(5)5个元素
另类声明举例:
!一维数组
"integer a(0:5)" ! 这个数组能使用的是a(0),a(1),a(2),a(3),a(4),a(5) 6个元素
"integer a(-3:3)" ! 这个数组能使用的是a(-3),a(-2),a(-1),a(0),a(1),a(2),a(3) 7个元素
!二维数组
"integer a(5,0:5)" ! 这个数组能使用的是a(1~5,0~5)
"integer a(2:3,-1:3)" ! 这个数组能使用的是a(2~3,-1~3)
总结
本文仅简单介绍了Fortran数组声明的方法。