C语言一维数组中的数据随机排列

时间:2022-03-17 01:04:54

#include <stdio.h>
#include <stdlib.h>

void randomlize(int *a, int n)
{
    
    int i = 0,j = 0, k = 0;    
    for(i = 0; i < n; i++)        
    {        
        j = rand()%(n-i)+i;        
        k = a[i];        
        a[i] = a[j];        
        a[j] = k;        
    }    
}

int main(void)
{
    int i;
    int a[]={1,2,3,4,5,6,7,8,9};

    randomlize(a,9);
    for(i = 0; i < 9; i++)        
    {
        printf("%d ",a[i]);
    }    
    return 0;    
}

C语言对一维数组中的数据随机排列/全排列。