This actually is useful, because it allows the symbols to visual indicators when reading currency figures and can be used in a programmatic way. $ becomes a start marker for the beginning of a currency figure where the most significant digit is immediately after the marker and anything remaining after flows from that, and the same is true for cents where the symbol acts as an end marker and infers a lower bound. They can almost be thought of as start and end markers in regex, although they are not used together so not exactly that way.
It makes a sort of rational sense, at least to me.
The rationale I've always heard for having the $ at the beginning of the number was so that a handwritten value on, say, a check couldn't be modified by sticking a number at the beginning. 1.00$ could be forged into 91.00$, but not so with $1.00.