题解 | #小白鼠排队#

小白鼠排队

https://www.nowcoder.com/practice/27fbaa6c7b2e419bbf4de8ba60cf372b

#include <stdio.h>

typedef struct Mouse_Arr
{
    int weight; //老鼠重量
    char color[10]; //老鼠颜色
}Mouse_Arr;

int cmp(const void *a,const void  *b)
{
    Mouse_Arr c = *(Mouse_Arr*)a;
    Mouse_Arr d = *(Mouse_Arr*)b;
    return d.weight - c.weight; //降序
}

int main() {
    //按照重量输出帽子颜色,关键在于如何对应起来输出
    int count,i;
    Mouse_Arr array[100];
    scanf("%d",&count); //老鼠的数量
    for(i=0;i<count;i++)
    {
        scanf("%d %s",&array[i].weight,array[i].color);
    }
    qsort(array, count, sizeof(array[0]), cmp); //对array重量降序排序
    for(int i=0;i<count;i++)
    {
        printf("%s\n",array[i].color); //按照排序结果只输出颜色
    }
    return 0;
}

全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务