求一个数组的最大值和最小值,并将它们储存在两个变量中,使用指针实现代码
时间: 2024-02-23 15:58:24 浏览: 80
好的,我理解了你的问题。下面是代码实现:
```c++
#include <iostream>
void findMaxMin(int* arr, int size, int* max, int* min) {
*max = *min = arr[0]; // 初始化最大值和最小值为数组的第一个元素
for (int i = 1; i < size; i++) {
if (arr[i] > *max) {
*max = arr[i];
}
if (arr[i] < *min) {
*min = arr[i];
}
}
}
int main() {
int arr[] = {3, 5, 1, 9, 7};
int size = sizeof(arr) / sizeof(arr[0]);
int max, min;
findMaxMin(arr, size, &max, &min);
std::cout << "max: " << max << std::endl;
std::cout << "min: " << min << std::endl;
return 0;
}
```
在函数`findMaxMin`中,我们传入一个数组的指针`arr`,数组的大小`size`,以及两个指向变量`max`和`min`的指针。在函数内部,我们使用`*max`和`*min`访问指针所指向的变量,然后遍历数组,更新最大值和最小值。
在`main`函数中,我们定义了一个数组`arr`,并计算其大小。然后我们定义了两个整型变量`max`和`min`,并将它们的地址作为参数传递给`findMaxMin`函数。最后,我们输出最大值和最小值。
希望这个答案能够帮到你,如果你还有其他问题,可以继续问我哦!
阅读全文