稀疏矩阵最好使用专门的存储结构和求解器。
如果你真的要自己存储,可以试试这样:
[Fortran] 纯文本查看 复制代码 program www_fcode_cn
implicit none
integer , allocatable :: a(:) , b(:)
allocate( a(9) )
a = [1,2,0,0,4,0,0,0,8,0]
! 如果你的编译器不支持,请加入以下语句
!allocate( b( count(a/=0) ) )
b = pack(a,a/=0)
write(*,*) b
end program www_fcode_cn |