admin 管理员组

文章数量: 1087135


2024年4月22日发(作者:顺序结构程序设计例题)

fortran77给二维数组赋值方法

Fortran77中给二维数组赋值有多种方法,下面将介绍其中的两种。

第一种方法是使用循环逐个为数组元素赋值。假设我们有一个二维数组`arr`,

其大小为n行m列。我们可以使用两个嵌套的循环来为数组的每个元素赋值。具

体代码如下所示:

```fortran

program fortran_array_assignment

implicit none

integer, parameter :: n = 3 ! 数组的行数

integer, parameter :: m = 4 ! 数组的列数

integer :: arr(n, m)

integer :: i, j, value

! 使用循环为数组赋值

do i = 1, n

do j = 1, m

value = (i-1)*m + j ! 这里可以根据需要自定义赋值规则

arr(i, j) = value

end do

end do

! 打印数组的值

print *, '二维数组arr的值为:'

do i = 1, n

do j = 1, m

print '(i2)', arr(i, j)

end do

end do

end program fortran_array_assignment

```

上述代码中,我们使用两个嵌套循环,从1到n和从1到m,分别遍历了数组

的每个元素,并给它们赋上了特定的值。

第二种方法是使用数组初始化。在Fortran77中,我们可以在声明数组的同时

直接初始化数组元素的值。具体代码如下所示:

```fortran

program fortran_array_assignment

implicit none

integer, parameter :: n = 3 ! 数组的行数

integer, parameter :: m = 4 ! 数组的列数

integer :: arr(n, m) = reshape((/1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12/), shape(arr))

! 打印数组的值

print *, '二维数组arr的值为:'

do i = 1, n

do j = 1, m

print '(i2)', arr(i, j)

end do

end do

end program fortran_array_assignment

```

上述代码中,我们使用`reshape`函数将数组初始化的值`(1, 2, 3, 4, 5, 6, 7, 8, 9,

10, 11, 12)`重新整形为大小为n行m列的二维数组`arr`。在声明数组时,使用等号

将初始化的值赋给数组。

这两种方法都可以用来给Fortran77中的二维数组赋值。你可以根据具体需求

选择使用哪种方法。


本文标签: 数组 使用 赋值 方法 循环