题解 | #争夺前五名#

争夺前五名

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

#include <stdio.h>

//qsort - 函数实现
// #include<stdlib.h>
// int cmp_int(const void* e1, const void* e2) 
// {
// 	return *(int*)e1 - *(int*)e2;
// }

// int main() 
// {
// 	int n = 0;
// 	int arr[40] = { 0 };
// 	scanf("%d", &n);
// 	int i = 0;
// 	for (i = 0; i < n; i++) 
// 	{
// 		scanf("%d", &arr[i]);
// 	}
// 	//使用c语言库函数 - qsort 实现排序
// 	qsort(arr, n, 4, cmp_int);
//     for(i = n-1;i>=n-5;i--)
//     {
//         printf("%d ",arr[i]);
//     }
// 	return 0;
// }




//冒泡排序实现
int main()
{
    int n = 0;
    int arr[40] = {0};
    scanf("%d",&n);
    int i = 0;
    for(i = 0;i<n;i++)
    {
        scanf("%d",&arr[i]);
    }
    //冒泡排序
    //两两相邻比较,并且交换
    for(i = 0;i <n-1;i++)//趟数
    {
        int tmp = 0;//交换
        //一趟冒泡排序要进行多少对元素的比较
        int j = 0;
        for(j = 0;j<n-1-i;j++)//需要比几次
        {
            if(arr[j]>arr[j+1])//判断元素是否需要交换
            {
                tmp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = tmp;
            }
        }

    }
    for(i = n-1;i>=n-5;i--)
    {   
        printf("%d ",arr[i]);
    }
    return 0;
}








全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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