把最后的
```
cout<<fixed<<setprecision(2)<<double(mx/(m-2));
```
改一下就可以了,你这样输出的后两位是00,改成下面这样
```c
double l=mx;
cout<<fixed<<setprecision(2)<<double(l/(m-2));
```
就可以了。
另外,你可以试试边算边求最大值:
```c
#include <iostream>
#include <iomanip>
using namespace std ;
int main(){
int n , m , maxn=0 ;cin>>n>>m;
for (int i = 1 ; i <= n ; i++ ) {
int max=0,min=0,sum=0;
cin>>max>>min;if(max<min) swap(max,min);
for(int j = 3 ; j <= m ; j++ ){
int a ;cin>>a;
if (a<=min) sum+=min,min=a;
else if (a>=max) sum+=max,max=a;
else sum+=a;
}
if(sum>=maxn)maxn=sum;
}
double l=maxn;
cout<<fixed<<setprecision(2)<<double(l/(m-2));
}
```
by 初学者oL @ 2022-03-20 11:59:23
大佬,为什么要改成这样啊[憨笑]
```
double l=mx;
cout<<fixed<<setprecision(2<<double(l/(m-2));
```
by zps1122 @ 2022-03-27 08:39:11
@[初学者oL](/user/102650)
by zps1122 @ 2022-03-27 08:46:14