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