在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
函数来随机更换数组元素,然后输出原始数组和随机更换后的数组。