c语言:编写函数,利用指针型参数,,求一个整型数组中元素的最大值和最小值。要求(1)不得使用返回值和全局变量(2)编写主函数,通过函数调用求出数组元素的最大值和最小值并输出
时间: 2024-03-12 21:47:15 浏览: 85
c语言利用指针求数组的最大值与最小值
可以使用指针型参数来实现这个功能。代码如下:
```
#include <stdio.h>
void max_min(int *arr, int len, int *max, int *min) {
*max = *min = arr[0];
for (int i = 1; i < len; i++) {
if (arr[i] > *max) {
*max = arr[i];
}
if (arr[i] < *min) {
*min = arr[i];
}
}
}
int main() {
int arr[] = {2, 4, 1, 5, 9, 3, 7, 8};
int len = sizeof(arr) / sizeof(arr[0]);
int max, min;
max_min(arr, len, &max, &min);
printf("max = %d\n", max);
printf("min = %d\n", min);
return 0;
}
```
在 `max_min` 函数中,我们使用指针型参数 `max` 和 `min` 来保存最大值和最小值。在函数中,我们遍历整个数组,比较每个元素与当前最大值和最小值的大小关系,如果当前元素比最大值还大,就更新最大值,如果当前元素比最小值还小,就更新最小值。
在 `main` 函数中,我们定义了一个整型数组 `arr`,然后通过 `sizeof()` 来获取数组的长度。接着定义了两个变量 `max` 和 `min`,用来保存最大值和最小值。最后调用 `max_min` 函数来获取数组元素的最大值和最小值,并输出结果。
阅读全文