because I know that it should print 45.00.
Instead, it prints what?
What triggers serialEvent? In Processing, the event can be triggered whenever any serial data arrives, or by the arrival of a specific character, like carriage return, line feed, or ">".
What does the sending code look like? Is it sending the necessary trigger (if there is one defined)?
If the function is called whenever serial data is present, it may get called long before the complete packet has arrived, resulting in incomplete data.