c++用指针变量设计一通用函数,该函数查找实型数组中最大和最小元素并输出相应元素和下标。
时间: 2024-05-07 19:21:16 浏览: 104
下面是代码实现:
```c++
#include <iostream>
using namespace std;
void findMinMax(double* arr, int size, double& minVal, int& minIndex, double& maxVal, int& maxIndex) {
minVal = arr[0];
minIndex = 0;
maxVal = arr[0];
maxIndex = 0;
for(int i = 1; i < size; i++) {
if(arr[i] < minVal) {
minVal = arr[i];
minIndex = i;
}
if(arr[i] > maxVal) {
maxVal = arr[i];
maxIndex = i;
}
}
}
int main() {
double arr[] = {4.5, 2.1, 6.7, 1.2, 8.9};
int size = sizeof(arr) / sizeof(double);
double minVal, maxVal;
int minIndex, maxIndex;
findMinMax(arr, size, minVal, minIndex, maxVal, maxIndex);
cout << "Min value: " << minVal << ", index: " << minIndex << endl;
cout << "Max value: " << maxVal << ", index: " << maxIndex << endl;
return 0;
}
```
在上面的代码中,我们通过传递指向数组的指针变量来遍历数组元素,同时使用引用变量来返回最小值、最小值索引、最大值和最大值索引。在函数内部,我们使用了 if 语句来更新最小值和最大值,并使用索引变量来跟踪它们的位置。
阅读全文