您的位置:首页 > 其它

歌星大奖赛

2016-10-28 21:51 176 查看
实现在比赛中,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;

}

                      
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: