【冒泡排序法】
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i, j, n, temp, *nums;
scanf("%d", &n);
nums = (int *)calloc(n, sizeof(int));
for (i = 0; i < n; i++)
scanf("%d", nums + i);
for (i = 1; i <= n - 1; i++) // 大循环:[1, n-1],共比较n-1轮,特别注意这里是1开头
{
for (j = 0; j < n - i; j++) // 小循环:[0, n-i),每轮进行n-i次
{
if (nums[j] < nums[j + 1]) // 这里写<是从大到小, >是从小到大
{
temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
for (i = 0; i < n; i++)
printf("%d ", nums[i]);
putchar('\n');
free(nums);
return 0;
}