C语言中怎么对数组随机排序?

Python015

C语言中怎么对数组随机排序?,第1张

可以用一个辅助数组进行随机排序,方法如下:

1 获取要排序的数组长度L。

2 定义整型的辅助数组,长度为L。

3 生成L个随机整型数字,存与辅助数组中,这样要排序数组和辅助数组就是一一对应的了。

4 对辅助数组排序,排序过程中,当改变辅助数组中数字的位置时,同步改变要随机排序的原数组中对应的元素位置。比如为排序交换辅助数组的第三个和第五个元素,那么就要同时交换原数组中的第三个和第五个元素。

5 当辅助数组排序完成后,原数组中的值就是随机顺序了。

6 删除辅助数组。

#include

#include

#include

intmain()

{

inti,j,n,k,t,a[100]

srand((unsigned)time(NULL))

<p

利用rand()函数产生随机数字,rand()%n产生小于n的随机数,然后交换。

运行的结果:

#include

#include

intmain()

{

int&nbs

利用rand()函数产生随机数字,rand()%n产生小于n的随机数,然后交换。

扩展资料

C语言排序法

在一层循环找出最小数的下标,该下标用min保存,直到比较完整个数组,即可找到最小的数,然后将该数放入数组的第一位。

这样只能排好一个元素,于是需要再嵌套一层外层循环即可排好所有元素。第二次循环就不用再比较第一个元素了,因为第一个元素已经排好,依次类推,每一次循环就会排好一个,进行n-1次循环即可排好所有元素。