使用Java编写:求二维数组,的最大值所在的行和列。 输出内容为:最大值在第行第列
时间: 2024-05-01 15:23:15 浏览: 20
假设二维数组为 `int[][] arr`,可以使用以下代码来求解最大值所在的行和列:
```
int maxVal = Integer.MIN_VALUE;
int maxRow = 0;
int maxCol = 0;
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
if (arr[i][j] > maxVal) {
maxVal = arr[i][j];
maxRow = i;
maxCol = j;
}
}
}
System.out.println("最大值在第" + (maxRow + 1) + "行第" + (maxCol + 1) + "列");
```
其中,`maxVal` 存储当前已经遍历过的最大值,`maxRow` 和 `maxCol` 分别存储最大值所在的行和列。在遍历过程中,如果发现一个元素比当前最大值还要大,就更新 `maxVal`、`maxRow` 和 `maxCol` 的值。最后输出结果时,注意行和列的下标从 1 开始。
相关问题
用java编写一个二维数组,求最值,每一行之和,和平均数
以下是一个求二维数组最值、每一行之和和平均数的Java代码示例:
```java
public class ArrayDemo {
public static void main(String[] args) {
// 定义一个二维数组
int[][] arr = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
// 求二维数组最大值和最小值
int max = arr[0][0];
int min = arr[0][0];
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
if (arr[i][j] > max) {
max = arr[i][j];
}
if (arr[i][j] < min) {
min = arr[i][j];
}
}
}
System.out.println("最大值为:" + max);
System.out.println("最小值为:" + min);
// 求每一行之和和平均数
for (int i = 0; i < arr.length; i++) {
int sum = 0;
for (int j = 0; j < arr[i].length; j++) {
sum += arr[i][j];
}
double avg = (double) sum / arr[i].length;
System.out.println("第" + (i + 1) + "行之和为:" + sum);
System.out.println("第" + (i + 1) + "行平均数为:" + avg);
}
}
}
```
输出结果为:
```
最大值为:9
最小值为:1
第1行之和为:6
第1行平均数为:2.0
第2行之和为:15
第2行平均数为:5.0
第3行之和为:24
第3行平均数为:8.0
```
Java编写程序,定义一个3行4列的二维数组,键盘输入元素(数据自定义),求出该二维数组中的最大值和最小值,并显示输出最大值和最小值及它们的位置
好的,我可以帮你解答这个问题。以下是Java的代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int[][] arr = new int[3][4];
Scanner input = new Scanner(System.in);
int max = Integer.MIN_VALUE, min = Integer.MAX_VALUE, max_i = 0, max_j = 0, min_i = 0, min_j = 0;
// 键盘输入元素
System.out.println("请输入3行4列的二维数组,每行输入4个元素:");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
arr[i][j] = input.nextInt();
if (arr[i][j] > max) {
max = arr[i][j];
max_i = i;
max_j = j;
}
if (arr[i][j] < min) {
min = arr[i][j];
min_i = i;
min_j = j;
}
}
}
// 输出结果
System.out.println("该二维数组中的最大值为 " + max + ",位于第 " + (max_i + 1) + " 行第 " + (max_j + 1) + " 列。");
System.out.println("该二维数组中的最小值为 " + min + ",位于第 " + (min_i + 1) + " 行第 " + (min_j + 1) + " 列。");
}
}
```
这段代码中,我们先定义了一个3行4列的二维数组,然后使用Scanner类从键盘输入元素,并且在输入的同时找到最大值和最小值以及它们的位置。最后输出最大值和最小值以及它们的位置。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)