编写函数计算一维数组中最大值出现的位置(如果最大值多次出现,返回第一次出现的下标即可)。
时间: 2024-05-10 13:16:24 浏览: 162
可以使用一个变量来记录最大值和其对应的下标,然后遍历一遍数组,找到最大值出现的第一个位置即可。
以下是示例代码:
```python
def find_max_index(arr):
max_val = float('-inf') # 初始化为负无穷
max_idx = -1 # 初始化为-1,表示未找到最大值
for i in range(len(arr)):
if arr[i] > max_val:
max_val = arr[i]
max_idx = i
return max_idx
```
在上述代码中,我们使用了 `float('-inf')` 来表示最小值,这是因为数组中的元素可能是负数,所以不能使用 `0` 或其他正数来初始化。
使用示例:
```python
arr = [3, 2, 5, 1, 5, 4]
print(find_max_index(arr)) # 输出:2
```
在上述示例中,数组中最大值为 `5`,它第一次出现的位置是下标 `2`。
相关问题
c语言编写函数计算一维数组中最大值出现的位置(如果最大值多次出现,返回第一次出现的下标即可)。
可以编写一个函数来实现该功能,代码如下:
```c
int findMaxIndex(int arr[], int size) {
int max = arr[0];
int maxIndex = 0;
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
maxIndex = i;
}
}
return maxIndex;
}
```
这个函数接受两个参数,一个是包含数组元素的整数数组,另一个是数组的大小。它将遍历整个数组,找到最大的元素,并返回它第一次出现的下标。
接下来,你可以在主函数中调用该函数,并将数组和大小作为参数传递:
```c
int main() {
int arr[] = {1, 3, 5, 7, 5, 9, 3};
int size = sizeof(arr) / sizeof(arr[0]);
int maxIndex = findMaxIndex(arr, size);
printf("The first occurrence of the maximum element is at index %d\n", maxIndex);
return 0;
}
```
输出结果为:
```
The first occurrence of the maximum element is at index 5
```
编写函数能找出一维数组中最大的值所在下标
好的,我可以帮你编写这个函数。以下是一个示例函数:
```python
def find_max_index(arr):
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
return max_index
```
这个函数的作用是找出一维数组 `arr` 中最大的值所在的下标。它使用一个 `for` 循环遍历数组中的每个元素,同时用一个变量 `max_val` 记录当前找到的最大值,用另一个变量 `max_index` 记录最大值所在的下标。如果后面遍历到的某个元素比当前的最大值还要大,那么就更新 `max_val` 和 `max_index` 的值。最后返回 `max_index` 即可。
你可以把这个函数复制到你的代码中,并传入你想要查找最大值所在下标的数组作为参数,它会返回相应的下标。
阅读全文