1.冒泡排序
1)第一轮比较次数:数组的总长度-1
2)下一轮比上一轮比较的次数:少一次
int temp;
int nums[n];
for(int i = 0; i < n-1; i++)
{
for(int j = 0; j < n-1-i; j++)
{
if(nums[j] < nums[j+1])
{
temp = nums[j];
nums[j] = nums[j+1];
nums[j+1] = temp;
}
}
}
2.选择排序
#include <stdio.h>//从大到小排序
int main()
{
int n,x;
scanf("%d", &n);
int a[11];
for(int i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
for(int i=0; i<n-1; i++)
{
for(int j=i+1; j<n; j++)
{
if(a[i]<a[j])
{
x=a[i];
a[i]=a[j];
a[j]=x;
}
}
}
printf("%d", a[0]);
for(int i=1; i<n; i++)
{
printf(" %d", a[i]);
}
return 0;
}