Ciao,
Ma la ranf() dove l'hai pescata? L'hai implementata tu o fa parte di qualche libreria di terze parti?
Secondo le indicazioni che ho trovato, comunque, la ranf dovrebbe restituire numeri compresi in [0,1). Se il funzionamento è analogo alla rand() dovrai inizializzare (una sola volta) il generatore di numeri casuali. Tale inizializzazione la puoi ottenere con una srand(time(NULL));
Ciaociao