编写一个函数,找出一个整数数组中的最大值和最小值,要求使用指针作为函数参数。
#include
void find_max_min(int *arr, int size, int *max, int *min) {
*max = *min = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] > *max) {
*max = arr[i];
}
if (arr[i] < *min) {
*min = arr[i];
}
}
}
int main() {
int arr[] = ;
int size = sizeof(arr) / sizeof(arr[0]);
int max, min;
find_max_min(arr, size, &max, &min);
printf("最大值是 %d\n", max);
printf("最小值是 %d\n", min);
return 0;
}
这个程序实现了一个函数find_max_min,该函数接受一个整数数组、数组大小以及两个指针,用于存储数组中的最大值和最小值。函数内部通过遍历数组找到最大值和最小值,并将其存储到指针所指向的变量中。
在main函数中,我们声明了一个整数数组arr,并初始化为。我们通过sizeof(arr) / sizeof(arr[0])计算出数组的大小,然后声明两个整数变量max和min,用于存储最大值和最小值。
接着,我们调用find_max_min函数,传入数组、数组大小以及指向max和min变量的指针。函数会找到数组中的最大值和最小值,并将其存储到max和min变量中。
最后,通过printf函数打印出最大值和最小值。
领取专属 10元无门槛券
私享最新 技术干货