gpt4 book ai didi

perl - 如何在 Perl 中打印二维数组?

转载 作者:行者123 更新时间:2023-12-01 01:37:16 25 4
gpt4 key购买 nike

我有一个二维数组。当我打印/转储这个时,我得到以下信息
我的二维数组:

push (@matrix, \@a1Comparea2);
push (@matrix, \@a3Comparea4);
a1Comparea2 应该是数组的第一行。 a3Comparea4 应该是数组的第二行。
$VAR1 = [
[
'1 6',
'2 7',
'3 8',
'4 9',
'5 10'
],
$VAR1->[0],
$VAR1->[0],
$VAR1->[0],
$VAR1->[0],
[
'7 12',
'8 13',
'9 14',
'10 15',
'11 16'
],
$VAR1->[5],
$VAR1->[5],
$VAR1->[5],
$VAR1->[5]
];
当我尝试使用以下代码打印时:
for (my $j= 0; $j < $rows; $j++)
{
for (my $k= 0; $k < @a1; $k++)
{
print "Row:$j Col:$k = $matrix[$j][$k]\n";
}
}
我得到以下输出:
Row:0 Col:0 = 1 6
Row:0 Col:1 = 2 7
Row:0 Col:2 = 3 8
Row:0 Col:3 = 4 9
Row:0 Col:4 = 5 10
Row:1 Col:0 = 1 6
Row:1 Col:1 = 2 7
Row:1 Col:2 = 3 8
Row:1 Col:3 = 4 9
Row:1 Col:4 = 5 10
如您所见,数据是重复的。

最佳答案

您是否正确定义了数组?
您应该使用 @对于数组和 $对于标量...
检查这个 article for a quick reference .

那篇文章给出了这个简单的例子。

@matrix = (
[3, 4, 10],
[2, 7, 12],
[0, 3, 4],
[6, 5, 9],
);
这将创建一个四行三列的数组。要打印数组的元素,请键入:
for($row = 0; $row < 4; $row++) {
for($col = 0; $col < 3; $col++) {
print "$matrix[$row][$col] ";
}
print "\n";
}

关于perl - 如何在 Perl 中打印二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1112988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com