La función necesita una semilla (seed) para crear los número aleatorios a partir de ese valor. Lo más común en estos casos es que se use la hora actual del sistema como semilla para el generador. Solo agrega srand(time(NULL)) antes de llamar a la función rand()
Código: cpp
#include <iostream>
#include <stdlib.h>
#include <ctime>
using namespace std;
int main() {
srand(time(NULL));
int a = rand();
cout<<a<<endl;
system("pause");
return 0;
}