C语言从键盘输入5个整数去掉最大值和最小值求剩下的元素的平均数
时间: 2024-12-11 18:23:00 浏览: 10
从输入的一批正整数中求出最大值、最小值和平均值,输入0结束数据的输入
在C语言中,你可以通过以下步骤计算给定五个整数输入(去掉最大值和最小值)后的平均数:
1. 首先,使用`scanf()`函数从用户那里获取五个整数的输入,并将它们存储在一个数组中。
```c
#include <stdio.h>
int main() {
int num[5];
for (int i = 0; i < 5; i++) {
scanf("%d", &num[i]);
}
```
2. 接着,你需要找到数组中的最小值和最大值。可以使用两个变量分别记录当前找到的最小值和最大值,然后遍历数组更新这两个值。
```c
int min = num[0], max = num[0];
for (int i = 1; i < 5; i++) {
if (num[i] < min) {
min = num[i];
} else if (num[i] > max) {
max = num[i];
}
}
```
3. 使用`min`和`max`来构建一个新的数组,只包含大于`min`且小于`max`的数。
```c
int filtered[3] = {0};
int count = 0;
for (int i = 0; i < 5; i++) {
if (num[i] != min && num[i] != max) {
filtered[count++] = num[i];
}
}
```
4. 计算剩余数字的平均数。由于我们知道有三个有效数字,可以直接除以3得到平均值。注意这里假设数组元素个数是固定的3个。
```c
float average = (float)filtered[count - 1] / count;
```
5. 最后,打印结果:
```c
printf("平均数是: %.2f\n", average);
return 0;
}
```
阅读全文