Utilizza la fgets al posto della scanf e leggi tutta la riga in una sola stringa.

In seguito, separa le varie parti usando il ; come separatore (magari con la strtok)