Я знаю, что это старый вопрос, но я верю, что он правильно отвечает на вопрос.
Не перезапускайте генератор каждый раз, когда вы запускаете этот код.
Заполняя егок одному и тому же значению каждый раз, вы просто получите одно и то же «случайное» число.Помните, что это генератор псевдослучайных чисел, поэтому на основе начального значения будет сгенерировано «случайное» число.Поэтому, если вы каждый раз набираете один и тот же номер, вы всегда будете получать один и тот же номер.
Решение состоит в том, чтобы вызывать srand (time (NULL)) только один раз при выполнении вашей программы.Затем каждый вызов rand () будет каждый раз давать вам новый номер.