Fortran Coder

标题: 矩阵输出格式 [打印本页]

作者: 一路向北    时间: 2021-4-3 10:12
标题: 矩阵输出格式
请问
矩阵A=[1,2,3;4,5,6]Fortran中输出的是 1,4,2,5,3,6
怎么让Fortran按照
[1,2,3;
4,5,6]
的格式输出?



作者: 风平老涡    时间: 2021-4-4 05:29
本帖最后由 风平老涡 于 2021-4-4 05:31 编辑

Fortran中矩阵是用二维数组来表达的。
[Fortran] 纯文本查看 复制代码
program matrix
        implicit none
        integer :: a(2,3)
        integer :: i,j

        a = reshape([1,2,3,4,5,6], [2,3], order = [2,1])
   
        print *, a
        print *
        do i = 1, 2
             print *, (a(i, j), j = 1, 3)
        end do
end program matrix



           1           4           2           5           3           6

           1           2           3
           4           5           6


作者: 青衣巷    时间: 2021-4-4 16:29
本帖最后由 青衣巷 于 2021-4-4 16:33 编辑

[Fortran] 纯文本查看 复制代码
program matrix
  implicit none
  integer :: a(2,3)
  a = reshape([1,2,3,4,5,6], [2,3])
  write(*,'(*(3(i3,1x),/))') a
end program matrix

作者: 一路向北    时间: 2021-4-4 19:37
青衣巷 发表于 2021-4-4 16:29
[mw_shl_code=fortran,true]program matrix
  implicit none
  integer :: a(2,3)

谢谢,输出格式(*(3(i3,1x),/))里面的*是什么意思呀   
作者: vvt    时间: 2021-4-5 15:56
* 就是有多少算多少。




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2