我正在尝试创建一个二维数组,如下所示,当给定整数 n 时,我使用嵌套的 for 循环,我可以创建该数组,但由于某种原因,我无法弄清楚如何用 1 到 (n *n)。有什么建议?
1 2 3
4 5 6
7 8 9
扬帆大鱼
浏览 187回答 3
3回答
慕侠2389804
下面是一个基本的解决方案。它有助于在解决问题之前将问题形象化。您从第一行的第一列开始。您只希望在列填充所有值后更改行。外部 for 循环控制行,内部 for 循环控制列。var n = 3;var counter = 1;var outerArray = [];// Now just add to the array with a nested for loopfor(var i = 0; i < n; i++) { // Add empty array to the outer array. outerArray.push([]); // outer for loop steps through the rows for(var j = 0; j < n; j++) { // The inner loop steps through the columns outerArray[i][j] = counter; counter++; } }// Now just print the array.console.log(outerArray);