在Fortran中读写矩阵可以通过使用文件操作和数组操作来实现。下面是一个示例代码,展示了如何在Fortran中读取和写入矩阵:
- 读取矩阵:program read_matrix
implicit none
integer :: i, j, n
real :: matrix(100, 100)
character(len=20) :: filename
! 从用户输入获取文件名和矩阵的维度
write(*,*) "请输入文件名:"
read(*,*) filename
write(*,*) "请输入矩阵的维度:"
read(*,*) n
! 打开文件并读取矩阵数据
open(unit=10, file=trim(filename), status='old', action='read')
do i = 1, n
read(10, *) (matrix(i, j), j = 1, n)
end do
close(10)
! 打印读取的矩阵
do i = 1, n
write(*, '(100F8.2)') (matrix(i, j), j = 1, n)
end do
end program read_matrix
- 写入矩阵:program write_matrix
implicit none
integer :: i, j, n
real :: matrix(100, 100)
character(len=20) :: filename
! 从用户输入获取文件名和矩阵的维度
write(*,*) "请输入文件名:"
read(*,*) filename
write(*,*) "请输入矩阵的维度:"
read(*,*) n
! 生成一个示例矩阵
do i = 1, n
do j = 1, n
matrix(i, j) = i + j
end do
end do
! 打开文件并写入矩阵数据
open(unit=10, file=trim(filename), status='replace', action='write')
do i = 1, n
write(10, '(100F8.2)') (matrix(i, j), j = 1, n)
end do
close(10)
write(*,*) "矩阵已成功写入文件!"
end program write_matrix
这个示例代码中,用户需要输入文件名和矩阵的维度。然后,程序会打开文件并读取或写入矩阵数据。读取矩阵时,程序会逐行读取文件中的数据,并将其存储到矩阵数组中。写入矩阵时,程序会生成一个示例矩阵,并将其逐行写入文件。
请注意,这只是一个简单的示例,实际应用中可能需要根据具体需求进行适当修改。另外,为了简化示例,未进行错误处理和边界检查,请根据实际情况进行补充。
腾讯云相关产品和产品介绍链接地址: