Eso no te funciona porque el operador & devuelve el resto de la division entre dos dos operandos. Y devuelve un entero.
Para hacer lo que quieres puedes probar con la fucion: drand48
Mira esta pagina
http://www.chuidiang.com/clinux/funciones/rand.php