#定义一个长度为[16][16]的整型二维数组并输入或指定所有位置的元素值,分别实现二维数组中所有行和所有列中所有元素的累加和并打印。
二、代码实现
代码如下(示例):
package com.lagu.homwork2;
import com.lagou.task10.StaticOuter;
import java.util.Random;
import java.util.Scanner;//借用扫描器
/**
* 定义一个长度为[16][16]的整型二维数组并输入或指定所有位置的元素值,分别实现二维数组中所有行和所有列中所有元素的累加和并打印。
* 再分别实现二维数组中左上角到右下角和右上角到左下角所有元素的累加和并打印(对角线上的元素)。
*/
public class PrintArrayArrayTest {
public static void main(String[] args) {
//1. 先定义一个扫描器
Scanner sc = new Scanner(System.in);
//2.定义一个int型的二维数组
System.out.print("请输入数组的行数:");
int row = sc.nextInt();
System.out.print("请输入数组的列数:");
int column = sc.nextInt();
int[][] arr = new int[row][column];
//2.2 根据需求判断选择那是输入方式
while(true){
System.out.println("请选择“手动输入”还是“自动生成”一个整型二维数组: ");
String str = sc.next();
if ("手动输入".equals(str)) {
//2.3输入二维数组的值
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入第" + (i + 1) + "行的" + arr[i].length + "个元素");
for (int j = 0; j < arr[i].length; j++) {
arr[i][j] = sc.nextInt(); //读取arr[i][j]的值
}
}
break; //退出循环
} else if ("自动生成".equals(str)) {
//2.4电脑随机产生二维数组
Random ra = new Random();
for(int i = 0; i < arr.length; i++){
for(int j = 0 ; j < arr[i].length; j++){
arr[i][j]= ra.nextInt(10); //a[i][j] 取 0 ~ 9之间的随机值
}
}