知识点:学会取随机数和选择法排序
选择法由大到小排序:第1次循环在20个数中找到最大的数跟第1个数互换位置;第2次循环在第2个到第20个数中找到最大的数跟第2个数互换位置······第19次循环判断第20个数是否大于它,是则互换位置。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int a[20];
int i, j, m, n;
srand((unsigned)time(NULL));//取随机数的声明
for (i = 0; i<20; i++)
a[i] = rand() % 81 + 20;//取随机数
for (i = 0; i<20; i++)
printf("%d ", a[i]);
printf("\n");
for (i = 0; i<19; i++)//选择法排序
{
m = a[i];
n = i;
for (j = i + 1; j<20; j++)
{
if (a[j]>m)
{
m = a[j];
n = j;
}
}
a[n] = a[i];
a[i] = m;
}
for (i = 0; i<20; i++)
printf("%d ", a[i]);
printf("\n");
system("pause");
return 0;
}
输出结果