利用C语言编写程序,利用指针方法求数组的最大值与最小值
时间: 2023-12-14 21:35:55 浏览: 111
下面是一个利用指针方法求解数组的最大值与最小值的示例程序:
```c
#include <stdio.h>
void findMinMax(int* arr, int n, int* min, int* max)
{
// 初始化最小值和最大值
*min = *max = arr[0];
// 遍历数组查找最小值和最大值
for (int i = 1; i < n; i++) {
if (arr[i] < *min) {
*min = arr[i];
}
if (arr[i] > *max) {
*max = arr[i];
}
}
}
int main()
{
int arr[] = {5, 3, 7, 2, 8, 4};
int n = sizeof(arr) / sizeof(int);
int min, max;
findMinMax(arr, n, &min, &max);
printf("Minimum value: %d\n", min);
printf("Maximum value: %d\n", max);
return 0;
}
```
在上面的程序中,我们定义了一个 `findMinMax` 函数,它接受一个整数类型的数组、数组长度、最小值和最大值的指针作为参数。函数内部使用指针方法遍历数组,查找最小值和最大值,并将结果存储在 `min` 和 `max` 指针指向的内存位置中。
在 `main` 函数中,我们定义了一个整数类型的数组 `arr`,并计算出数组长度 `n`。然后,我们调用 `findMinMax` 函数,并将 `min` 和 `max` 的地址作为参数传递给它。最后,我们输出求得的最小值和最大值。
注意,指针方法可以修改函数外部变量的值,因此在调用 `findMinMax` 函数时,需要将 `min` 和 `max` 的地址传递给它。
阅读全文