Почему я всегда получаю одинаковую последовательность случайных чисел с помощью rand ()? - PullRequest
49 голосов
/ 10 июля 2009

Я впервые пробую случайные числа с C (я скучаю по C #). Вот мой код:

int i, j = 0;
for(i = 0; i <= 10; i++) {
    j = rand();
    printf("j = %d\n", j);
}

с этим кодом, я получаю одну и ту же последовательность каждый раз, когда запускаю код. Но он генерирует разные случайные последовательности, если я добавлю srand(/*somevalue/*) перед циклом for. Кто-нибудь может объяснить, почему?

Ответы [ 11 ]

0 голосов
/ 10 июля 2009

позвоните srand(sameSeed) перед звонком rand(). Подробнее здесь .

...