多维数组学习 1

这篇文章包括多维数组的定义、多维数组的几种初始化方法、以及按列求和按行求和的实例计算。这些是我上课记下来的,比较基础,对于初学者应该是有用的,如果感兴趣就认真的看下去吧。

多维数组学习一java

package duoweishuzu;

import java.util.Scanner;

public class Demo1 {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		// 定义一个数组
		int[][] matrix = new int[5][5];
		int sum = 0;
		// 用输入值初始化数组
		for (int i = 0; i < matrix.length; i++) {
			for (int j = 0; j < matrix[i].length; j++) {
				matrix[i][j] = input.nextInt();
			}
		}
		// 输出数组
		System.out.println("显示表格:");
		for (int i = 0; i < matrix.length; i++) {
			for (int j = 0; j < matrix[i].length; j++) {
				System.out.printf("%d ", matrix[i][j]);
			}
			System.out.println("");
		}
		// 用随机数初始化数组,这里的随机值是0~100之间
		for (int i = 0; i < matrix.length; i++) {
			for (int j = 0; j < matrix[i].length; j++) {
				matrix[i][j] = (int) (Math.random() * 100);
			}
		}
		// 按行求和
		System.out.println("显示表格:");

		for (int i = 0; i < matrix.length; i++) {

			for (int j = 0; j < matrix[i].length; j++) {
				System.out.printf("%3d      ", matrix[i][j]);
				sum += matrix[i][j];
			}
			System.out.println("和:" + sum);
			sum = 0;
		}
		/*
		 * 按列求和,[0,0],[1,0],[2,0],[3,0]... 保持列不变,行变,循环的时候内外循环调换
		 */

		for (int j = 0; j < matrix.length; j++) {
			for (int i = 0; i < matrix.length; i++) {
				sum += matrix[i][j];
			}
			System.out.printf("和:%4d  ", sum);
			sum = 0;
		}
		// 求总合
		for (int i = 0; i < matrix.length; i++) {
			for (int j = 0; j < matrix[i].length; j++) {
				sum += matrix[i][j];
			}

		}
		System.out.println("总和:" + sum);
		// 求出哪一行的和最大
		int max = 0;
		int index = 0;
		for (int i = 0; i < matrix[0].length; i++) {
			max += matrix[0][i];
		}
		for (int i = 1; i < matrix.length; i++) {
			int sum1 = 0;
			for (int j = 0; j < matrix[i].length; j++) {
				sum1 += matrix[i][j];
			}
			if (max < sum1) {
				max = sum1;
				index = i;
			}
		}
		System.out.println("第" + (index + 1) + "行最大" + "和为" + max);
	}
}		
		


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值