9个数,去掉一个最大数和一个最小数,剩下的求平均值C语言代码
时间: 2024-12-14 11:21:26 浏览: 4
在C语言中,如果你有一个包含9个整数的一维数组,并想去除其中的最大值和最小值后计算剩余数的平均值,你可以这样做。这里是一个简单的示例:
```c
#include <stdio.h>
// 定义数组和变量
int arr[9], sum = 0, count = 7; // 除了第一个和最后一个元素,我们有8个数
void find_average(int arr[], int size) {
// 遍历数组,找到前8个数并将它们相加
for (int i = 1; i <= 8; i++) {
sum += arr[i];
}
// 计算并打印平均值
double average = (double)sum / count;
printf("平均值为: %.2f\n", average);
}
int main() {
// 假设你已经有了一个已排序的9个数的数组
arr[0] = ...; // 最小值
arr[9] = ...; // 最大值
for (int i = 1; i <= 9; i++) {
if (i != 1 && i != 9) { // 除了第一个和最后一个
count++;
}
}
find_average(arr, sizeof(arr)/sizeof(arr[0]));
return 0;
}
```
在这个例子中,你需要预先确定数组的最小值和最大值,并且假设数组已经排序。然后,`find_average`函数会忽略掉这两个极端值,计算其余数的和,并除以8得到平均值。
注意:实际应用中,如果你不知道最大值和最小值,你可能需要遍历整个数组两次来找出它们,但这将增加程序复杂度。此外,这个代码假设你知道数组的大小,如果数组动态分配,需要额外处理其长度。
阅读全文