我现在正在学习MATLAB,我正在尝试打印一个同时打印行和列的矩阵。像这样:
(1,1) (2,1) (3,1)
(1,2) (2,2) (3,2)
(1,3) (3,2) (3,3)
但我打印的是:
1,1
2,1
3,1
1,2
2,2
3,2
1,3
2,3
3,3
如何在Matlab中格式化矩阵?
使用fprintf
函数格式化数据,例如
fprintf('n(1,1) (1,2) (1,3)n(2,1) (2,2) (2,3)n(3,1) (3,2) (3,3)n')
输出将为
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3)
(3,1) (3,2) (3,3)
你可以尝试如下:
mat = ones(10);
[r,c] = size(mat);
ind_str = '';
for ii = 1 : r
for jj = 1 : c
tmp = sprintf('(%2d,%2d) ',ii,jj);
ind_str = strcat(ind_str,tmp);
end
ind_str = strcat(ind_str,'n');
end
fprintf(ind_str);