题解 | #争夺前五名#

争夺前五名

http://www.nowcoder.com/practice/cd052308a1c44a88ad00255f312c3e14

    貌似题解可以附上本题的链接,那就不重复描述了,开冲。
    所有要注意的点都写在注释里了,另外交换两个数的方法用的是左老师推荐的异或,非常好使,nb就vans了。

#include <stdio.h>
int main(){
    int num, i, j;
    scanf("%d", &num);
    // 判断一下学生数量够不
    if(num<5||num>40)
        return false;
    int a[num];
    // 先初始化数组
    for(i=0;i<=num;i++)
        a[i]={0};
    for(i=0;i<num;i++)
    {
        scanf("%d", &a[i]);
        // 对当前位置上的数与它右边的数进行比较
        // 当前数小就往后挪
        // 当前数大就把下标往前移一位,再继续比
        for(j=i;j>=0;j--)
        {
            if(a[j]<a[j+1])
            {
                a[j] = a[j]^a[j+1];
                a[j+1] = a[j]^a[j+1];
                a[j] = a[j]^a[j+1];
            }
        }
    }
    // 最后输出前五个
    for(i=0;i<5;i++)
        printf("%d ", a[i]);
    return 0;
}
全部评论

相关推荐

珩珺:那些经历都太大太空了,实习的情况不了解,大创项目连名字、背景、目的及意义都没体现出来;地摊经济更是看完连卖的什么产品都不知道,项目成果直接写营收多少都更直观真实一点;后面那个校文体部的更是工作内容是组织活动整理流程,成果变成了当志愿者,而且你们学校本科学生会大一入学就直接当部长吗,志愿里面还提到了疫情防控,全面解封是22年12月的事情,可能时间上也有冲突。可能你花了钱人家就用AI给你随便写了点内容改了一下,没什么体现个性化的点
点赞 评论 收藏
分享
故事和酒66:假设一下,就算报了培训班,不还是要投简历,只是项目改了。那不如先写几个培训班的项目,纯靠编,然后试试有没有面试。如果真有再报也不迟,如果没有还是没有,那就不是培训班的问题了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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