试题 算法提高 数字分组
`
在这里插入代码片#include<stdio.h>
int main()
{
double a[10],b[10],c[10],size=0,s1=0,s2=0,s3=0,m,n,z,t,h;
int i,j,x,y;
for(i=0;i<10;i++)
scanf("%lf",&a[i]);
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(i=0;i<9;i++)
{b[i]=a[i+1]-a[i];
c[i]=b[i];}
for(i=0;i<8;i++)
for(j=0;j<8-i;j++)
if(b[j]>b[j+1]) {h=b[j];b[j]=b[j+1];b[j+1]=h;}
for(i=0;i<9;i++)
{if(c[i]==b[8]) x=i+1;
if(c[i]==b[7]) y=i+1;}
for(i=0;i<y;i++)
s1+=a[i];
for(i=y;i<x;i++)
s2+=a[i];
for(i=x;i<10;i++)
s3+=a[i];
m=s1/y;n=s2/(x-y);z=s3/(10-x);
printf("%g\n%g\n%g\n",m,n,z);
return 0;
}