Как srand относится к функции rand?

Я понимаю, что функция rand () генерирует одно и то же число при каждом запуске, если вы неизменить номер семени. Тот's, где приходит srand (). Время всегда меняется, поэтому я знаю, что вы должны передать параметр времени (null) в srand. Мой вопрос с кодом ниже с учебного сайта.

int main()
{
    int i, n=5;
    time_t t;

    /* Intializes random number generator */
    srand((unsigned) time(&t));

    /* Print 5 random numbers from 0 to 50 */
    for( i = 0 ; i < n ; i++ ) {
        printf("%d\n", rand() % 50);
    }

    return(0);
}

Не вижу ссылки с сранда

((unsigned) time(&t)); 

и ранд.

printf("%d\n", rand() % 50);

Где связь между рандом и срандом? Что я имею в виду или ожидаю, так это то, что я предполагаю, что rand () получит некоторый параметр от srand (), поэтому он знает, что каждый раз генерирует разные числа. Я предполагаю, что это будет выглядеть примерно так: rand (srand (time (null));

Это'Это как инициализация переменной без ее использования для меня. srand инициализируется, но я нене вижу, чтобы его использовали.

Генерирует ли rand разные числа, потому что srand вызывается первым перед rand?

Ответы на вопрос(4)

Ваш ответ на вопрос