maxnum的初始化应该是最小的,题目数据从0到10,可能会有全部分数小于2的情况发生
by PF_anyone @ 2023-10-05 22:02:20
两个if语句如果直接跳过的话很可能跳过多个而不是两个
by wsh88 @ 2023-10-18 20:23:59
n减了2而all很可能不是n-2个数的和
by wsh88 @ 2023-10-18 20:26:26
建议用个sum来记录和,用和减去最大值和最小值再除以n-2
by wsh88 @ 2023-10-18 20:31:29
代码:
```cpp
#include <bits/stdc++.h>
using namespace std;
int main(){
int n,ii,maxnum = 0,minnum = 11,sum = 0;
double all;
cin >> n;
for (int i = 0; i < n; i++){
cin >> ii;
if (ii > maxnum){
maxnum = ii;
}
if (ii < minnum){
minnum = ii;
}
sum += ii;
}
sum = sum - minnum - maxnum;
n -= 2;
all = (double) sum / n;
cout << fixed << setprecision(2) << all;
return 0;
}
```
[AC了](https://www.luogu.com.cn/record/130209582)
by wsh88 @ 2023-10-18 20:38:19