题解 | #成绩排序#

成绩排序

https://www.nowcoder.com/practice/8e400fd9905747e4acc2aeed7240978b

#include <stdio.h>


typedef struct{
    char name[30];
    int score;
}class;
int main() {
    int n,type,i,j;
    scanf("%d%d",&n,&type);
    class c[n];
    for(i=0;i<n;i++)
    {
        scanf("%s %d",c[i].name,&c[i].score);
    }
    class cc;
    if(type==0)
    {
        for(i=0;i<n-1;i++)
        {
            for(j=1;j<n-i;j++)
            {
                if(c[j].score>c[j-1].score)
                {
                    cc=c[j];
                    c[j]=c[j-1];
                    c[j-1]=cc;
                }
            }
        }
    }else if(type==1)
    {
        for(i=0;i<n-1;i++)
        {
            for(j=1;j<n-i;j++)
            {
                if(c[j].score<c[j-1].score)
                {
                    cc=c[j];
                    c[j]=c[j-1];
                    c[j-1]=cc;
                }
            }
        }
    }
    for(i=0;i<n;i++)
    {
        printf("%s %d\n",c[i].name,c[i].score);
    }
    return 0;
}

全部评论
用的冒泡排序,开始用选择排序不行
点赞 回复 分享
发布于 2023-11-18 17:10 广东

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务