c语言

C语言如何实现数组元素的随机更换

小樊
81
2024-08-27 04:14:03
栏目: 编程语言

在C语言中,你可以使用rand()函数和srand()函数来生成随机数,并通过交换数组元素的方式来实现数组元素的随机更换

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

void randomizeArray(int arr[], int n) {
    srand(time(NULL)); // 初始化随机数种子
    for (int i = n - 1; i > 0; i--) {
        int j = rand() % (i + 1); // 生成一个随机索引
        int temp = arr[i]; // 交换数组元素
        arr[i] = arr[j];
        arr[j] = temp;
    }
}

int main() {
    int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
    int n = sizeof(arr) / sizeof(arr[0]);

    printf("原始数组:\n");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    randomizeArray(arr, n);

    printf("随机更换后的数组:\n");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    return 0;
}

这个程序首先定义了一个名为randomizeArray的函数,它接受一个整数数组和数组的长度作为参数。在这个函数中,我们使用rand()函数生成随机数,并通过交换数组元素的方式来实现数组元素的随机更换。在main函数中,我们创建了一个整数数组,并调用randomizeArray函数来随机更换数组元素,然后输出原始数组和随机更换后的数组。

0
看了该问题的人还看了