C语言中定义一个函数,求数组的最大值和最小值,并返回其最大值与最小值。
时间: 2024-10-13 21:03:24 浏览: 65
c语言利用指针求数组的最大值与最小值
在C语言中,你可以通过定义一个函数来找到数组的最大值和最小值。这里是一个简单的例子,假设你有一个整数数组:
```c
#include <stdio.h>
#include <limits.h> // 包含INT_MAX和INT_MIN,用于获取整型的最大和最小值
// 函数声明,接受一个整型数组和其大小作为参数
int* find_max_min(int arr[], int size);
int main() {
int my_array[] = {5, 10, 1, 8, 3};
int array_size = sizeof(my_array) / sizeof(my_array[0]);
int* result = find_max_min(my_array, array_size);
printf("Max value is: %d\n", result[0]);
printf("Min value is: %d\n", result[1]);
free(result); // 释放内存
return 0;
}
// 函数实现
int* find_max_min(int arr[], int size) {
int max_value = INT_MAX; // 初始化为最大值
int min_value = INT_MIN; // 初始化为最小值
for (int i = 0; i < size; i++) {
if (arr[i] > max_value) {
max_value = arr[i];
}
if (arr[i] < min_value) {
min_value = arr[i];
}
}
// 动态分配内存存储结果
int* result = (int*)malloc(sizeof(int) * 2);
result[0] = max_value;
result[1] = min_value;
return result;
}
```
在这个示例中,`find_max_min`函数遍历数组,更新最大值和最小值。最后,它会动态地创建一个包含这两个值的数组并返回。
阅读全文