rand() - генерирует случайное число, до версии 4.2 генерация последовательность случайных чисел в рамках одной сессии всегда была одинакова. Чтобы предотвратиь такое поведение генератор случайных чисел устанавливался в случайную позицию при помощи функции srand(). Начиная с версии 4.2 эту функцию можно не использовать, rand() теперь самостоятельно выполняет эту работу.