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 j = 0;
for (j = 0; j < n - 1 - i; j++) //在一趟冒泡排序中循环进行比较交换
{
if (arr[j] < arr[j + 1]) //比大小,并交换顺序
{
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
for (i = 0; i < 5; i++) //循环打印出数组元素排序后的前五个
{
printf("%d ", arr[i]);
}
return 0;
}
int cmp_int(void* e1, const void* e2)
{
return(*(int*)e2 - *(int*)e1); // (int*)进行强制类型转换
}
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]);
}
qsort(arr,n,4,cmp_int); //自动排序函数
for (i = 0; i < 5; i++) //循环打印出数组元素排序后的前五个
{
printf("%d ", arr[i]);
}
return 0;
}