C++:编写子函数,在主函数中输入数据,求出实型数组中的最大值及其下标,在主函数中输出结果。要求:利用指针实现
时间: 2024-04-30 20:22:02 浏览: 100
设计一个函数, 找到数组中的最大值以及下标。
以下是 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
void maxIndex(double arr[], int size, double* maxVal, int* maxIndex) {
*maxVal = arr[0]; // 初始化最大值为数组的第一个元素
*maxIndex = 0; // 初始化最大值下标为0
// 遍历数组,找到最大值及其下标
for (int i = 1; i < size; i++) {
if (arr[i] > *maxVal) {
*maxVal = arr[i];
*maxIndex = i;
}
}
}
int main() {
const int SIZE = 5;
double arr[SIZE];
double maxVal;
int maxIndex;
// 输入数组元素
cout << "请输入" << SIZE << "个实数:";
for (int i = 0; i < SIZE; i++) {
cin >> arr[i];
}
// 调用子函数,求解最大值及其下标
maxIndex(arr, SIZE, &maxVal, &maxIndex);
// 输出结果
cout << "最大值为:" << maxVal << endl;
cout << "最大值下标为:" << maxIndex << endl;
return 0;
}
```
这里定义了一个 `maxIndex` 的子函数,用于求解实型数组中的最大值及其下标。在主函数中,首先输入数组元素,然后调用 `maxIndex` 子函数求解结果,最后输出结果。需要注意的是,在调用子函数时,需要传递最大值和最大值下标的指针作为参数,以便在子函数中更新这两个变量的值。
阅读全文