zj2861158451 2021-10-17 14:28 采纳率: 0%
浏览 9

将n种奶粉按序排列,对价格进行从大到小的排序,当价格相等时,则对适用年龄从大到小排序,保证在价格相等的情况下年龄一定不同

输入描述

第一行输入总的种类数1≤n≤20
接下来n行每行依次输入该种的适用年龄a,价格b和名称(1≤a,b≤100)名称为一个字母,该字母可能大写可能小写

输出描述

按次序依次输出排序后的奶粉排列情况(对价格进行从大到小的排序,如若价格相等,则对适用年龄从大到小排序,保证在价格相等的情况下年龄一定不同)输出的n行,每行依次为该种的适用年龄a,价格b和名称。

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-10-17 15:37
    关注
    #Include <stdio.h>
    typedef struct _nf
    {
        char name;
        int age;
        float price;
    }nf;
    
    void fun(nf *a,int n)
    {
        for(int i=0;i<n-1;i++)
        {
              for(int j=0;j<n-i-1;j++)
              {
                  if((a[j].price < a[j+1].price) || (a[j].price == a[j+1].price) && (a[j].age <a[j+1].age))
                  {
                        nf  t= a[j];
                        a[j] = a[j+1];
                        a[j+1] = t;
                  }
              }
        }
    }
    int main()
    {
          nf a[20];
          int n = 0;
          scanf("%d",&n);
          for(int i=0;i<n;i++)
                scanf("%d%f%c",&a[i].age,&a[i].price,&a[i].name);
          fun(a,n);
          for(int i=0;i<n;i++)
                printf("%c %d %f\n",a[i].name,a[i].age,a[i].price);
          return 0;
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 10月17日

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题