-3

我如何打印对角线字符串??(对不起,我想显示对角线字符串)

对角线,因为我的数组具有对角线零的模式。

请帮忙....继承人我的新代码

public class Matrix {

    public static void main(String[] args) {

        int A[][]=     {{1,2,3,4,0},
                        {6,7,8,0,8},
                        {7,6,0,4,3},
                        {2,0,2,3,4},
                        {0,6,7,8,9}};

        for(int i=0; i<5; i++)
        {
            for(int j=0; j<5; j++)
            {
                if ((A[i][j]==A[0][4])||(A[i][j]==A[1][3])
                        ||(A[i][j]==A[2][2])||(A[i][j]==A[3][1])||(A[i][j]==A[4][0]))
                    {

                System.out.println("Diagonal");
                }
            System.out.print(A[i][j]+" ");
            }
            System.out.println("");
        }
    }
}

任何人都可以尝试此代码并注意其输出..

4

4 回答 4

2
int A[][]={
                    {1,2,3,4,0},
                    {6,7,8,0,8},
                    {7,6,0,4,3},
                    {2,0,2,3,4},
                    {0,6,7,8,9}
              };

for(int i=0; i<5; i++)
{

 System.out.print(A[i][i]+" ");
}

一个for循环就可以了!!!

于 2013-10-18T07:12:08.680 回答
1

如果 i==j 那将是你的对角线元素。

当您说您还想打印其他元素时,我需要更清楚,除了已识别的对角线之外的所有其他元素都可以打印。

于 2013-10-18T07:10:19.820 回答
1

取决于哪个对角线。一个对角线是i == j。第二条对角线是i + j == n - 1(在您的情况下为 n = 5)。

于 2013-10-18T07:11:16.357 回答
0

Neji 的答案将打印对角线 (0, 0)、(1, 1)、(2,2) 等,我认为这不是你想要的。

要查看您的 2D 数组实际上是什么样子(因为我们没有将元素插入到 2D 数组中,因为它出现在您指定数组的方式中)我们必须在新的数组上打印数组 A[0]...A[i]各行。

要查看您的 2D 数组的实际外观:

int k = 0;
    for (int y = 0; y < A[k].length; y++) {
        for (int x = 0; x < A.length; x++) {
            System.out.print(A[x][y] + " ");
            k = x;
        }
        System.out.println("");
    }

要仅查看示例输入中的对角线:

int k = 0;
for (int x = 0; x < A[k].length; x++) {
    for (int y = 0; y < A.length; y++) {
        int z = Math.abs(A.length - 1 - x);
        if (y == z) { 
            System.out.print(A[x][y]);
        } else {
            System.out.print("  ");
        }
    }
    k = x;
    System.out.println("");
}
于 2013-10-18T16:26:30.167 回答