Функция rand () возвращает псевдослучайное целое число в диапазоне от 0 до RAND_MAX включительно (т. Е. Математический диапазон [0, RAND_MAX]).
Функция srand () устанавливает свойаргумент в качестве начального числа для новой последовательности псевдослучайных целых чисел, которая будет возвращена функцией rand ().Эти последовательности можно повторять, вызывая srand () с тем же начальным значением.
Так вы можете сделать, например:
#include<stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int v[10]; /* the 'very long' array */
int i;
srand(time(0)); /* random seed */
/* populating */
for (i = 0; i != sizeof(v)/sizeof(int); ++i)
v[i] = (rand() & 1) * 255;
for (i = 0; i != sizeof(v)/sizeof(int); ++i)
printf("%d ", v[i]);
putchar('\n');
return 0;
}
Компиляция и выполнение:
pi@raspberrypi:/tmp $ gcc -pedantic -Wextra -Wall r.c
pi@raspberrypi:/tmp $ ./a.out
255 0 0 255 0 0 0 255 255 0
pi@raspberrypi:/tmp $ ./a.out
0 255 0 0 0 255 0 255 255 0
pi@raspberrypi:/tmp $ ./a.out
255 255 255 0 0 0 255 0 255 0