在本示例中,我们将演示如何使用C++编写函数来在一个数组中查找最大值和最小值。我们将使用一个for循环来比较每个数组元素,然后根据需要更新最大值和最小值的值。最后,我们将返回一个指向包含最大值和最小值的结构体的指针。这个结构体包含了两个整型成员:max和min。我们在编辑器中使用lab2_4.cpp文件来实现以下函数:
#include
#include
using namespace std;
struct MinMax {
int min;
int max;
};
struct MinMax* findMinMax(int arr[], int n) {
struct MinMax* minmax = new struct MinMax();
int i;
/* If there is only one element then return it as min and max both*/
if (n == 1) {
minmax->max = arr[0];
minmax->min = arr[0];
return minmax;
}
/* If there are more than one elements, then initialize min
and max*/
if (arr[0] > arr[1]) {
minmax->max = arr[0];
minmax->min = arr[1];
}
else {
minmax->max = arr[1];
minmax->min = arr[0];
}
for (i = 2; i < n; i++) {
if (arr[i] > minmax->max) {
minmax->max = arr[i];
}
else if (arr[i] < minmax->min) {
minmax->min = arr[i];
}
}
return minmax;
}
int main() {
int arr[] = { 1000, 11, 445, 1, 330, 3000 };
int arr_size = 6;
struct MinMax* minmax = findMinMax(arr, arr_size);
cout << "Minimum element is " << minmax->min << endl;
cout << "Maximum element is " << minmax->max << endl;
return 0;
}
暂无评论