歌星大奖赛


实现在比赛中,10个评委打分,去掉最高分与最低分,然后求平均值并输出被去掉的最高分和最低分 。

程序

#include"stdio.h "

int main()

{
       int scr,i,max,min,sum;
       max=1;
       min=100;
       sum=0;
       for(i=1;i<=10;i++)
       {
          printf("input number %d_",i);
          scanf("%d",&scr);
          sum+=scr;
          if(scr>max)
             max=scr;
          if(scr<min)
             min=scr;
      }
      printf("cancle max score:%d\n cancle min score:%d\n",max,min);
      printf("Average score:%d\n",(sum-max-min)/8);

}

思考题:题目条件不变,但同时对评委评分进行裁判,在十个评委中找出最公平(和平均分最接近)和最不公平(和平均分相差最大)的评委。

#include"stdio.h"
#include"math.h"
int main()
{
       int i,max,min,sum,ave,n,h,g;
 
  int a[10];
  int b[10];
       max=1;
       min=100;
       sum=0;
  int j=100,k=0;
       for(i=0;i<=9;i++)
       {
          printf("input number %d_",i);
          scanf("%d",&a[i]);
          sum+=a[i];
          if(a[i]>max)
             max=a[i];
          if(a[i]<=min)
             min=a[i];
  }
       printf("cancle max score:%d\n cancle min score:%d\n",max,min);
       printf("Average score:%d\n",(sum-max-min)/8);
       for(i=0;i<=9;i++)
       { 

           ave=(sum-max-min)/8;
  b[i]=a[i]-ave;
  if(b[i]<0)
  {
  b[i]=-b[i];
  }
        }
  j=b[0];
  k=b[0];
  h=0;
  for(n=0;n<9;n++)
  {
  if(j<=b[n+1])
  j=b[n+1],h=n+1;
  if(k>=b[n+1])
                           k=b[n+1],g=n+1;  
  }
  printf("最不公平的评委是%d号\n 最公平的评委是%d号\n",h,g);
  return 0;
}


                      


版权声明:本文为yaotan666原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。