每天学点C:数组随机打乱顺序
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void MakeRand(int arr[], int count)
{
srand((unsigned int)time(NULL)); //随机数种子;
for (int i = 0; i<count - 1; i++)
{
int num = i + rand() % (count - 1 - i); // 取随机数
int temp = arr[i];
arr[i] = arr[num];
arr[num] = temp; //交换
}
}
void main()
{
int a[54] = { 0 };
for (int i = 0; i < 54; i++)
{
a[i] = i;
printf("初始化54个数:%d\n", a[i]);
}
printf("\n");
MakeRand(a,54);
printf("打乱之后1\n");
for (int i = 0; i<54; i++)
{
printf("%2d ", a[i]); //重新输出已经乱序的数;
if ((i+1)%10==0)
{
printf("\n");
}
}
system("pause");
}