c语言:编写函数,利用指针型参数,,求一个整型数组中元素的最大值和最小值。要求(1)不得使用返回值和全局变量(2)编写主函数,通过函数调用求出数组元素的最大值和最小值并输出(3)数组从键盘输入
时间: 2024-02-04 10:03:34 浏览: 149
c语言+从键盘输入10个无序的整数,存放在数组中,找出数组中最大值与最小值的所在的位置,并输出数组元素所在的位置与数组元素的值
5星 · 资源好评率100%
可以使用指针型参数来实现这个功能。代码如下:
```
#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[100];
int len;
printf("请输入数组长度:");
scanf("%d", &len);
printf("请输入数组元素:");
for (int i = 0; i < len; i++) {
scanf("%d", &arr[i]);
}
int max, min;
max_min(arr, len, &max, &min);
printf("max = %d\n", max);
printf("min = %d\n", min);
return 0;
}
```
在 `main` 函数中,我们定义了一个整型数组 `arr`,并通过 `scanf` 函数从键盘输入数组长度和元素。接下来定义了两个变量 `max` 和 `min`,用来保存最大值和最小值。最后调用 `max_min` 函数来获取数组元素的最大值和最小值,并输出结果。
在 `max_min` 函数中,我们与前面的例子一样,使用指针型参数 `max` 和 `min` 来保存最大值和最小值。在函数中,我们遍历整个数组,比较每个元素与当前最大值和最小值的大小关系,如果当前元素比最大值还大,就更新最大值,如果当前元素比最小值还小,就更新最小值。
阅读全文