Viết chương trình C để tạo mảng ngẫu nhiên

Các bước thực hiện để viết chương trình C:

1. Nhập vào số phần tử mảng size

2. Nhập giá trị các phần tử mảng bằng giá trị ngẫu nhiên từ 1 đến 100

3. In ra mảng đã tạo

Code tham khảo của chương trình C:

#include <stdio.h>
#include <stdlib.h>
#define MAX_SIZE 100
int main()
{
int size;
int arr[MAX_SIZE];
/*1. Input size of the array */
printf("Enter size of the array : ");
scanf("%d", &size);

/*2. Input elements in array with random values */
for(int i=0; i<size; i++)
{
arr[i] = rand()%100 + 1;
}
printf("The array : ");
for(int i=0; i<size; i++)
printf("%d ", arr[i]);
return 0;
}

 Hàm srand()

Hàm srand() là một hàm trong thư viện C xác định điểm ban đầu để tạo ra các chuỗi số ngẫu nhiên khác nhau. Không thể sử dụng hàm srand() nếu không sử dụng hàm rand().

#include <stdio.h>
#include <stdlib.h>
int main()
{
int num, i;
printf(" Enter a number to set the limit for a random number \n");
scanf (" %d", &num);
/* define the random number generator */
srand (4); // pass the srand() parameter
printf("\n"); // print the space
/* generate random number between 0 to 50 */
for (i = 0; i <num; i++)
{
printf( "%d \n", rand() % 50);
}
return 0;
}

Chương trình trên sẽ tạo ra số ngẫu nhiên với seed = 4 cố định. Nếu muốn tạo ra các số ngẫu nhiên có giá trị khác nhau ở những lần chạy sau thì seed phải có giá trị thay đổi, ví dụ, seed = 4, 3, 8, 9... Có thể sử dụng time để tạo ra seed có giá trị thay đổi

#include <stdio.h>
#include <stdlib.h>
#include <time.h> // use time.h header file to use time
int main()
{
int num, i;
time_t t; // declare time variable
num = 10;
/* define the random number generator */
srand ( (unsigned) time (&t)); // pass the srand() parameter
printf("\n"); // print the space
/* generate random number between 0 to 50 */
for (i = 0; i <num; i++)
{
printf( "%d ", rand() % 50);
}
return 0;
}