下面的程序中,调用了 findmax()函数,该函数寻找数组中的最大元素,将该元素的下 标通过参数返回,并返回其地址值,编程实现 findmax()函数。
时间: 2024-12-16 11:32:18 浏览: 21
下面是一个简单的C++示例,用于实现`findmax()`函数,它接收一个整数数组作为输入,找到其中的最大元素并返回其索引和地址:
```cpp
#include <iostream>
using namespace std;
int* findmax(int arr[], int n) {
// 初始化最大值和它的索引为第一个元素
int max_value = arr[0];
int max_index = 0;
// 遍历数组
for (int i = 1; i < n; ++i) {
if (arr[i] > max_value) {
max_value = arr[i]; // 如果当前元素更大,则更新最大值
max_index = i; // 更新最大值的索引
}
}
// 返回最大值的地址
return &arr[max_index];
}
int main() {
int array[] = {5, 9, 3, 7, 2};
int array_size = sizeof(array) / sizeof(array[0]);
int* max_address = findmax(array, array_size);
cout << "Max value is at index: " << *max_address << endl;
cout << "Address of the maximum element: " << max_address << endl;
return 0;
}
```
在这个程序中,`findmax()`函数遍历整个数组,每次比较当前元素与已知的最大值,如果当前元素较大,就更新最大值及其索引。最后返回指向最大值的指针。
阅读全文