【问题描述】求一维数组中的最大值及最大值所在数组下标 【样例输入】 2030105040【样例输出】 t [3]=50
时间: 2023-11-13 08:07:08 浏览: 45
可以使用一个变量记录最大值和另一个变量记录最大值所在的数组下标,遍历一遍数组即可。以下是示例代码:
```python
arr = [2, 0, 3, 0, 1, 0, 5, 0, 4, 0]
max_val = arr[0]
max_index = 0
for i in range(1, len(arr)):
if arr[i] > max_val:
max_val = arr[i]
max_index = i
print("最大值为:", max_val)
print("最大值所在的数组下标为:t[", max_index, "]")
```
输出结果为:
```
最大值为: 5
最大值所在的数组下标为:t[ 6 ]
```
相关问题
【问题描述】求一维数组中的最大值及最大值所在数组下标 【样例输入】 20 30 10 50 40【样例输出】 t [3]=50
下面是一个C++的实现代码:
```c++
#include<iostream>
using namespace std;
int main()
{
int a[100],max=0,num=0,n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(max<a[i])//如果输入的数比max大,则更新max和num
{
max=a[i];
num=i;
}
}
cout<<"t ["<<num<<"]="<<max<<endl;//输出结果
return 0;
}
```
输入样例:
```
5
20 30 10 50 40
```
输出样例:
```
t [3]=50
```
C语言:求二维数组中最大元素值及其行列号 【输入形式】 输入一个3*3的二维数组 【输出形式】 输出二维数组的最大值及其所在的下标 【样例输入】 1 2 3 4 9 6 7 8 9 【样例输出】 9 2 2
下面是C语言的实现代码:
```c
#include <stdio.h>
int main()
{
int arr[3][3];
int max = arr[0][0];
int max_i = 0, max_j = 0;
// 读取数组
printf("请输入3*3的二维数组:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &arr[i][j]);
if (arr[i][j] > max) {
max = arr[i][j];
max_i = i;
max_j = j;
}
}
}
// 输出结果
printf("最大值为%d,它的行号为%d,列号为%d\n", max, max_i + 1, max_j + 1);
return 0;
}
```
解释一下代码:
首先,我们定义了一个3*3的二维数组`arr`,以及用来存储最大值和它的行列号的变量`max`、`max_i`和`max_j`。
然后,我们通过两个嵌套的for循环,依次读取用户输入的数组元素,并在读取的过程中,判断是否出现了更大的元素,如果是,则更新最大值和它的行列号。
最后,我们输出最大值和它的行列号,这里需要注意,题目要求的行列号是从1开始计数的,因此我们在输出的时候需要将行列号加1。
示例输入:
```
1 2 3
4 9 6
7 8 9
```
示例输出:
```
最大值为9,它的行号为2,列号为2
```
阅读全文