c语言邱最大值和最小值
时间: 2025-02-01 07:05:40 浏览: 30
在C语言中,寻找数组的最大值和最小值通常涉及到遍历数组并比较每个元素的过程。以下是两种常见的方法:
1. **迭代法**:
- 定义两个变量,`max` 和 `min` 分别初始化为数组的第一个元素,然后从第二个元素开始遍历数组。
```c
int arr[] = {5, 2, 9, 1, 7};
int max = arr[0], min = arr[0];
for (int i = 1; i < sizeof(arr) / sizeof(arr[0]); i++) {
if (arr[i] > max) {
max = arr[i];
}
else if (arr[i] < min) {
min = arr[i];
}
}
```
2. **递归法**(适用于小型数组,效率较低):
- 使用递归来同时找到最大值和最小值,递归函数接收当前元素、当前已知的最大值和最小值作为参数。
```c
#define MAX_SIZE 5
int findMinMax(int arr[], int start, int end, int* max, int* min) {
if (start == end) {
*max = arr[start];
*min = arr[start];
return 1;
} else {
if (arr[start] > *max) {
*max = arr[start];
}
if (arr[start] < *min) {
*min = arr[start];
}
return findMinMax(arr, start + 1, end, max, min);
}
}
int main() {
int arr[MAX_SIZE] = {5, 2, 9, 1, 7};
int max, min;
findMinMax(arr, 0, MAX_SIZE - 1, &max, &min);
//...
}
```
阅读全文
相关推荐

















