Since star rating is a double-precision float number, it is calculated with 52 binary digits of precision (about 15.65 decimal digits of precision).
For a measured variable that is not an integer and has limited precision, the amount of digits after the dot/comma is commonly used to indicate the precision of the measure.
For example, if the result of the measure is "4.", that means that the value was measured to be a value in the interval [3.5,4.5[, while if the result was "4.00", the value is a number in the interval [3.995,4.005[. Omitting the dot in the notation means that the value calculated was exactly 4 (which in this case it's not true, "4" in the game client means what usually "4.00" means).
In the end, both ways to notate the values are understandable if one knows that all values are shown with 2 decimal digits of precision for the decimal component (so one translates A to A.00, and A.B to A.B0). Ways to notate numbers aren't universal standards.
For the other variables (that are shown with 1 decimal digit for the decimal component). Those values are written in the.osu file as either an integer or a number with decimal digits, but are stored in the beatmap database as a single precision float number (which can't take numbers such as 4.1 exactly). If the game engine uses the values in the .osu file, then the notation shown in the game is correct, but if the values are converted to a float number by the game, then it should always display the decimal digit after the dot/comma.