java编写一个控制台应用程序,定义一个4行4列的二维数组,随机产生16个10-99之间的整数存入数组,并把这4行4列的数据显示出来,把该二维数组每行的和、每行的列的和求出来。
时间: 2024-10-27 17:06:27 浏览: 10
C++两个一维数组相加求和
在Java中,你可以通过Scanner获取用户输入,Random类生成随机数,以及Math类来进行数学运算。以下是一个简单的示例程序:
```java
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Random random = new Random();
int[][] array = new int[4][4]; // 定义4x4的二维数组
System.out.println("请输入数组元素范围(开始-结束): ");
int start = scanner.nextInt();
int end = scanner.nextInt();
// 遍历数组并填充随机数
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
array[i][j] = random.nextInt(end - start + 1) + start; // 生成10-99之间的整数
System.out.print(array[i][j] + " "); // 输出当前元素
}
System.out.println(); // 换行显示
}
// 计算每行和每列的和
double rowSums[] = new double[4];
double colSums[] = new double[4];
for (int i = 0; i < 4; i++) {
rowSums[i] = calculateRowSum(array, i);
System.out.println("第" + (i+1) + "行的和: " + rowSums[i]);
}
for (int j = 0; j < 4; j++) {
colSums[j] = calculateColumnSum(array, j);
System.out.println("第" + (j+1) + "列的和: " + colSums[j]);
}
scanner.close();
}
// 计算指定行的和
private static double calculateRowSum(int[][] array, int row) {
double sum = 0;
for (int col : array[row]) {
sum += col;
}
return sum;
}
// 计算指定列的和
private static double calculateColumnSum(int[][] array, int column) {
double sum = 0;
for (int row = 0; row < array.length; row++) {
sum += array[row][column];
}
return sum;
}
}
```
运行此程序,它会首先提示用户输入数字范围,然后生成并显示数组,最后计算每行和每列的总和。
阅读全文