用C语言写一个函数,该函数是对一个数组中的元素去掉最大最小值求平均值
时间: 2023-11-27 15:51:39 浏览: 82
以下是使用 C 语言编写的函数,该函数可以对一个数组中的元素去掉最大值和最小值,然后计算平均值。
```c
#include <stdio.h>
float average_without_min_max(int arr[], int size) {
int min = arr[0];
int max = arr[0];
int sum = 0;
int count = 0;
for (int i = 0; i < size; i++) {
if (arr[i] < min) {
min = arr[i];
}
if (arr[i] > max) {
max = arr[i];
}
sum += arr[i];
count++;
}
return (float)(sum - min - max) / (count - 2);
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
float result = average_without_min_max(arr, size);
printf("Average without min and max: %.2f\n", result);
return 0;
}
```
在这个函数中,我们首先定义了一个 `min` 和 `max` 变量,用于存储数组中的最小值和最大值。然后我们遍历整个数组来计算总和并计算数组中的元素数量。在遍历数组的过程中,我们还会更新最小值和最大值。
最后,我们从总和中减去最小值和最大值,并将结果除以元素数量减去 2,以获得平均值。
阅读全文