问题描述
编写一个Java程序,定义一个2行3列的整型数组,要求用户从键盘中为每个元素输入一个整数,然后输出每个数组元素的内容,再将维数组的每一行数据排序,然后分行输出所有元素。
分析
要考虑两个问题,第一个就是二维数组的构造,这个课堂和书本上都有,就不说了。第二个就是两行的分行排序问题了,把它转换成一行一行的排序就行了,这里就想到了控制语句。具体实现方法如下:
import java.util.Scanner;
public class array5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int [][]a=new int[2][3];
Scanner input=new Scanner(System.in);
for(int i=0;i<a.length;i++)
{
for(int j=0;j<a[i].length;j++)
{
System.out.print("请输入数组元素a["+i+"]["+j+"]:");
a[i][j]=input.nextInt();
}
}
System.out.println("数组元素为:");
for(int i=0;i<a.length;i++)
for(int j=0;j<a[i].length;j++)
System.out.print(a[i][j]+" ");
System.out.println();
int temp=0;
System.out.println("排序后所有数组元素:");
for(int i=0;i<a.length;i++)
{
for(int j=0;j<a[i].length;j++)
{
for(int k=j+1;k<a[i].length;k++)
{
if(a[i][j]<a[i][k])
{
temp=a[i][k];
a[i][k]=a[i][j];
a[i][j]=temp;
}
}
System.out.print(a[i][j]+" ");
}
System.out.println();
}
input.close();
}
}