二位数组中元素的对调

2014-11-24 09:22:12 · 作者: · 浏览: 2
[java]
/* (程序头部注释开始)

* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* 作 者: 李兆庆
* 完成日期: 2012 年 9 月 17 日
* 输入描述:
* 问题描述及输出: 编写一个 Java应用程序,
* 实现功能:将二维数组中值最大的元素和左上角元素对调,然后将值最小的元素与右下角元素对调。例如:
1 4 5 6
7 2 10 11
9 8 12 3,
对调后结果
12 4 5 6
7 2 10 11
9 8 3 1
* 程序头部的注释结束
*/

public class Num{

/**
* @param args
*/
public static void main(String[] args) {

int[][] a = { { 1, 4, 5, 6 }, { 7, 2, 10, 11 }, { 8, 9, 12, 3 } };

System.out.println("对调前输出数组为:");

printMatrix(a); //按二维方式输出数组

System.out.println("对调后输出数组为:");

printNewMatrix(a); //对调后输出数组

}

//按二维方式输出数组

static void printMatrix(int[][] a){

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

for (int j = 0; j < 4; j++){


System.out.print(a[i][j]+" ");

}

System.out.println();
}

}

//对调后输出数组

static void printNewMatrix(int[][] a){

int t, x;

t = a[2][3];

a[2][3] = a[2][2];

a[2][2] = t;

x = a[0][0];

a[0][0] = a[2][3];

a[2][3] = x;

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

for (int j = 0; j < 4; j++){

System.out.print(a[i][j]+" ");

}

System.out.println();
}

}

}