【问题标题】:2d array table form print out二维数组表格形式打印出来
【发布时间】:2023-03-04 16:07:01
【问题描述】:

所以如果用户输入 9 个随机数

我的代码以这样的排序形式打印出来

1 2 3 4 5 6 7 8 9

但我希望它像表格一样打印

喜欢这个

1 2 3 4 5 6 7 8 9

运行代码后的输出如下:

Please enter number of rows: 3
Please enter number of columns: 3
Please enter 9 numbers to sort: 9 8 7 6 5 4 3 2 1
Sorted numbers:
1 2 3 4 5 6 7 8 9
<emtpy line>

import java.util.Scanner;
public class table 
{
    public static void main(String args[])
    {
        System.out.println("Sorted numbers: ");
        for(int x = 0; x < matrix.length; x++)
            for (int y = 0; y < matrix[x].length; y++)      
            {
                System.out.print(matrix[x][y] + " ");
            }
    
        System.out.println(" ");
        
    }
}

【问题讨论】:

  • 请复制粘贴输出,以后不要提交输出图片

标签: sorting multidimensional-array


【解决方案1】:

您的问题在这里:

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

System.out.println(" ");

您没有将 print 语句包含在外部 for 循环中。如果添加括号,for 循环中的所有内容都会执行。

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

    System.out.println(" ");
}

这样,您的内部 for 循环将执行在一行上打印所有数字,然后执行 println,然后重复。

通过这个修改,我得到了这个输出:

Please enter number of rows: 3
Please enter number of columns: 3
Please enter 9 numbers to sort: 8 7 6 4 3 1 2 5 9
Sorted numbers: 
1 2 3  
4 5 6  
7 8 9  
<empty line>

【讨论】:

    猜你喜欢
    • 2011-07-01
    • 1970-01-01
    • 2012-02-14
    • 2015-02-03
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多