考试测评 结构体加冒泡

a5ddaa7fc30743dd90ec128c66dfbd07.png

8a74c2964057451386e447c9e6f19535.jpg 

 #define _CRT_SECURE_NO_WARNINGS 1 

#include<stdio.h>

 

int main() {

 int n;

 while (scanf("%d", &n) != EOF) {

  int t = n;

  struct{

   int name;

   int sum;

   int ma;

   int en;

   int c;

  }sco[5005];

  for (int i = 1; i <= n; i++) {

   scanf("%d %d %d %d", &sco[i].name, &sco[i].ma, &sco[i].en, &sco[i].c);

    sco[i].sum = sco[i].ma + sco[i].en + sco[i].c;

  }

   int max = sco[1].sum;

   int min = sco[1].sum;

   for (int i = 2; i <= n; i++) {

    if (sco[i].sum > max) max = sco[i].sum; 

    if (sco[i].sum <min)min = sco[i].sum;

  }

   for (int i = 1; i < n; i++) {

    for (int j = i + 1; j <= n; j++) {

     if (sco[i].sum == min&&sco[j].sum==min&&sco[i].name>sco[j].name) {

       sco[1004] = sco[i];

       sco[i] = sco[j];

       sco[j] = sco[1004];

     }

    }

   }

   for (int i = 1; i < n; i++) {

    for (int j = i + 1; j <= n; j++) {

     if (sco[i].sum == max && sco[j].sum == max && sco[i].name > sco[j].name) {

      sco[1004] = sco[i];

      sco[i] = sco[j];

      sco[j] = sco[1004];

     }

    }

   }

   printf("BEST\n");

   for (int i = 1; i <= n; i++) {

    if (max == sco[i].sum)printf("%d %d %d %d %d\n", sco[i].name, sco[i].sum, sco[i].ma, sco[i].en, sco[i].c);

   }

   printf("WORST\n");

   for (int i = 1; i <= n; i++) {

    if (min == sco[i].sum)printf("%d %d %d %d %d\n", sco[i].name, sco[i].sum, sco[i].ma, sco[i].en, sco[i].c);

   }printf("\n");

 }

 

 return 0;

}

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值