java下机第三周 任务2 求出二维数组(行数和列数必须相等)的非对角线元素之和

java上机第三周 任务2 求出二维数组(行数和列数必须相等)的非对角线元素之和
/* 
* 程序头部注释开始   
* 程序的版权和版本声明部分   
* Copyright (c) 2011, 烟台大学计算机学院学生   
* All rights reserved.   
* 文件名称:二维数组的一种加法运算                               
* 作    者:薛广晨                               
* 完成日期:2011  年 09 月  13  日   
* 版 本号:x1.0            
   
* 对任务及求解方法的描述部分   
* 输入描述:  
* 问题描述:  求出二维数组(行数和列数必须相等)的非对角线元素之和,即求两条对角线之外的元素之和
  
* 程序输出:   
* 程序头部的注释结束 
*/


package xue.com;

public class TestMatrix {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[][] a={{1,1,1,1},{1,2,2,1},{1,2,2,1},{1,1,1,1}};//初始化数组如4*4
		printMatrix(a);//按二维方式输出数组
		int sum=addMatrix(a);
		System.out.println("非对角线元素之和为:");
		System.out.println(sum);

	}
	static void printMatrix(int[][] a){
		System.out.println("数组为:");
		for(int i = 0; i < 4; i++)
		{
			for(int j = 0; j < 4; j++)
			{
				System.out.print(a[i][j] + "    ");
			}
			System.out.println();
		}
		
	}
	static int addMatrix(int[][] a){
		int sum = 0;
		for(int i = 0; i < 4; i++)
		{
			for(int j = 0; j < 4; j++)
			{
				if(i != j && i + j != 3)
					sum = sum + a[i][j];		
			}
		}
		return sum;
	}

}


 

运行结果:

数组为:
1    1    1    1   
1    2    2    1   
1    2    2    1   
1    1    1    1   
非对角线元素之和为:
8