0分答案,求救!!!

P5726 【深基4.习9】打分

Qiuxi @ 2023-06-02 10:57:57


#include<bits/stdc++.h>
using namespace std;
int main()
{
    double num; 
    int n,a[1002],b=-1,s=100000,he=0,o;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        if(a[i]>b) b=a[i];
        if(a[i]<s) s=a[i];
    }
    for(int i=1;i<=n;i++) 
    {
        he+=a[i];
    }
    o=he-b-s;
    num=o/(n-2);
    printf("%.2lf",num);
    return 0;
}

by SZ_Metro_Line14 @ 2023-06-02 11:16:56

@Qiuxi sort了解一下


by Qiuxi @ 2023-06-02 11:20:06

@SZ_Metro_Line14 不好意思,没学过sort呢


by SZ_Metro_Line14 @ 2023-06-02 11:26:05

@Qiuxi 哦问题不在求最大最小,那个18行那里格式没有切换,在o后面乘以1.0即可


by Voltaris @ 2023-06-11 11:54:55

sort 有三个参数 (1)第一个是要排序的数组的起始地址。

(2)第二个是结束的地址(最后一位要排序的地址)

(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。 一般两个参数是sort(数组+1,数组+n+1) 默认升序排列


by 1000YMH @ 2023-07-26 09:33:05


#include<bits/stdc++.h>
using namespace std;
int main(){
    int a,i,s[1001],d=11,f=0;
    double g=0;
    cin>>a;
    for(i=0;i<a;i++){
        cin>>s[i];
        if(s[i]<d)d=s[i];
        if(s[i]>f)f=s[i];
    }
    for(i=0;i<a;i++)g+=s[i];
    g=(g-d-f)/(a-2);
    cout<<fixed<<setprecision(2)<<g;
}

|