04——二维数组练习题

二维数组练习题

题目:

在这里插入图片描述

第一题代码:

package cn.com;

/**
 * 
 * 期末考试有三门课程:语文、数学、英语 三个学生 请计算: (1)每个学生的三门课的平均成绩 (2)全班英语成绩最高分
 * (3)全班语文、数学、英语的总成绩及其平均分
 *
 */
public class Demo {

	public static void main(String[] args) {
		int[][] array = { { 32, 35, 34 }, { 56, 45, 83 }, { 78, 65, 80 } };
		int len = array.length;
		int sum = 0;

		System.out.println("-------------第一题---------------");

		for (int i = 0; i < len; i++) {
			int[] array1 = array[i];
			int len1 = array1.length;
			for (int a = 0; a < len1; a++) {
				sum = sum + array[i][a];
			}
			double ping = (double) sum / (double) 3;
			System.out.println("学生" + (i + 1) + "三门课的平均成绩成绩为:" + ping);
		}

		System.out.println("-------------第二题---------------");

		int max = array[0][2];
		for (int i = 1; i < len; i++) {
			int[] array1 = array[i];
			int len1 = array1.length;
			for (int a = 0; a < len1; a++) {
				if (a == 2) {
					if (array[i][a] > max) {
						max = array[i][a];
					}
				}
			}
		}
		System.out.println("全班英语成绩的最高成绩为:" + max);

		System.out.println("-------------第三题---------------");

		int num1 = 0;
		int num2 = 0;
		int num3 = 0;
		for (int i = 0; i < len; i++) {
			int[] array1 = array[i];
			int len1 = array1.length;
			for (int a = 0; a < len1; a++) {
				if (a == 0) {
					num1 = num1 + array[i][a];
				} else if (a == 1) {
					num2 = num2 + array[i][a];
				} else if (a == 2) {
					num3 = num3 + array[i][a];
				}
			}
		}
		double ping1 = (double) num1 / (double) 3;
		double ping2 = (double) num2 / (double) 3;
		double ping3 = (double) num3 / (double) 3;
		System.out.println("全班的语文总成绩为:" + num1 + ",平均值为:" + ping1);
		System.out.println("全班的数学总成绩为:" + num2 + ",平均值为:" + ping2);
		System.out.println("全班的英语总成绩为:" + num3 + ",平均值为:" + ping3);
	}

}

执行结果:

在这里插入图片描述

第二题代码:

package cn.com;

//逆置二维数组
public class Demo {

	public static void main(String[] args) {
		int[][] array = { { 1, 2, 3 }, { 4, 5, 6 } };
		int num = 0;
		int[] array1 = array[0];
		int[] array2 = array[1];
		int len = array.length;
		int len1 = array1.length;
		int len2 = array2.length;
		for (int i = 0; i < len1 / 2; i++) {
			num = array1[i];
			array1[i] = array1[array1.length - i - 1];
			array1[array1.length - i - 1] = num;
		}
		for (int i = 0; i < len2 / 2; i++) {
			num = array2[i];
			array2[i] = array2[array2.length - i - 1];
			array2[array2.length - i - 1] = num;
		}
		for (int i = 0; i < len; i++) {
			int[] array3 = array[i];
			int len3 = array[i].length;
			for (int a = 0; a < len3; a++) {
				System.out.print(array[i][a] + "\t");
			}
			System.out.print("\n");
		}
	}
}

执行结果:

在这里插入图片描述

第三题代码:

package cn.com;

//请您完全逆置二维数组
public class Demo {

	public static void main(String[] args) {
		int[][] array = { { 1, 2, 3 }, { 4, 5, 6 } };
		int[] array1 = array[0];
		int[] array2 = array[1];
		int len = array.length;
		int len1 = array1.length;
		int len2 = array2.length;
		int sum = 0;
		for (int i = 0; i < len / 2; i++) {
			for (int a = 0; a < len1; a++) {
				sum = array1[a];
				array1[a] = array2[len2 - a - 1];
				array2[len2 - a - 1] = sum;
			}
		}
		for (int i = 0; i < len; i++) {
			int[] array3 = array[i];
			int len3 = array[i].length;
			for (int a = 0; a < len3; a++) {
				System.out.print(array[i][a] + "\t");
			}
			System.out.print("\n");
		}
	}
}

运行结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值