Para obtener números aleatorios normalmente se usa la función rand(); que te devuelve un entero entre 0 y RAND_MAX (constante definida por el compilador, no menor de 65 mil algo si recuerdo bien).
numero = x + rand() % y;
donde x es el primer elemento del intervalo deseado de valores aleatorios y y es el número de elementos del intervalo deseado. Por ejemplo, un número aleatorio de 2 a 5, el intervalo empieza en 2 y está formado por cuatro números:
numero = 2 + rand() % 4;
Si lo que quieres es generar un número aleatorio sin emplear esa función, tendrás que emplear otra :P, por ejemplo, haz una función que obtenga la fecha del sistema en segundos, este número siempre es diferente, luego la ajustas con alguna operación que diseñes tú mismo.
Saludos,
José Jorge (Geo).