请编写函数,通过数组名作为函数参数的方法传送过来三个数选出最大数和最小数,并通过形参传回调用函数。
时间: 2024-05-15 20:18:32 浏览: 12
好的,下面是代码实现:
```
void max_min(int* arr, int len, int& max_num, int& min_num) {
max_num = arr[0];
min_num = arr[0];
for (int i = 0; i < len; i++) {
if (arr[i] > max_num) {
max_num = arr[i];
}
if (arr[i] < min_num) {
min_num = arr[i];
}
}
}
int main() {
int arr[] = {1, 2, 3};
int len = sizeof(arr) / sizeof(int);
int max_num, min_num;
max_min(arr, len, max_num, min_num);
cout << "最大数是:" << max_num << endl;
cout << "最小数是:" << min_num << endl;
return 0;
}
```
首先定义了一个 max_min 函数,参数依次为数组指针、数组长度、最大数和最小数的引用。在函数内部,通过遍历数组,比较每个数与当前最大数和最小数的大小关系,找出数组中的最大数和最小数,并将结果传回调用函数。
在主函数中定义一个数组,调用 max_min 函数,并输出最大数与最小数的值。注意需要将数组的长度计算出来,并将 max_num 和 min_num 定义为引用类型,方便在函数内部修改它们的值并传回主函数。