c语言五十分求助求助

B2095 白细胞计数

Bluebrave @ 2022-11-22 18:23:45


#include<stdio.h>
#include<math.h>
int main()
{
    int a,m,n;
    double c=0,max1=0,max2=0,min1=100000,sum=0;
    scanf("%d",&a);
    double s[a];
    for(m=0;m<a;m++)
    {
        scanf("%lf",&s[m]);
        if(s[m]<min1)
        min1=s[m];
        if(s[m]>max1)
        max1=s[m];
        sum+=s[m];
    }
    double d=(sum-min1-max1)/(a-2);
    for(m=0;m<a;m++)
    {
        if(s[m]!=max1&&s[m]!=min1)
        {
            c=fabs(s[m]-d);
            if(c>max2)
            max2=c;
        }
    }
    printf("%.2lf %.2lf",d,max2);
    return 0;
} 

by Bluebrave @ 2022-12-28 23:45:27

这个无法过是因为可能存在与最大值或最小值相同的值


|