我不是要求每个人的答案我一定要问我需要改变什么才能打印掉2d数组的部分,例如如果数组有5行5列我将如何打印最后3行和最后三列。
import java.util.Scanner;
public class multiplication {
static int a,b;
public static void main(String[] args){
Scanner input = new Scanner(System.in);
a =input.nextInt();
b = input.nextInt();
int[][] matrix = new int[a][b];
matrix = timesTable(a,b);
for (int row = 0; row < matrix.length; row++) {
for (int column = 0; column < matrix[row].length; column++) {
System.out.print(" "+matrix[row][column] + "\t|");
}
System.out.println();
}
}
public static int[][] timesTable(int r, int c)
{
int [][] yes = new int[c][c];
for ( r = 0; r < yes.length ; r++)
{
for (c = 0; c < yes[r].length; c++)
{
yes[r][c] = (r+1)*(c+1);
}
}
return yes;
}
}
答案 0 :(得分:0)
if((row = 0 && col > 1) ||( row > 1 && col != 1)) {
//print
}
这个逻辑应该适用于你的例子。但我不明白你想做什么。 你能尝试多解释一下你想做什么吗?
编辑:你可能想检查一下。带有arraycopy和arraymanipulation的页面底部Oracle documentation
答案 1 :(得分:0)
本练习的目标是构建矩阵然后打印矩阵 - 或者 - 您只需要显示所需的输出吗? 我认为这是一个课程作业。
提示:想一想..如果你输入2&amp; 5,您想要2x5矩阵还是4x4矩阵?分配矩阵大小时非常重要。