Esatto (usando / e aggiungendo un cast a double prima). L'idea è che dividendo per il massimo numero che può assumere vai a riscalare il range sull'intervallo [0, 1), ottenendo così i numeri decimali che ti interessano. Ovviamente rimoltiplicando per un altro valore puoi ottenere il range che vuoi.
(nota comunque che la "granularità" del risultato rimane limitata dalla risoluzione di rand())