Since I did a computer arithmetic lab today I thought I might 'geek' this one up a bit.
Double precision floating point should represent numbers to an acurracy of about 2^(-51.5).
For your 0.1 seconds that error would be about 30 attoseconds per iteration.
Linearly your error would build up to an accumulated error of 1 second over 100.91 million years running that code. The error build-up does however speed up abit, as the accuracy drops when the time counter value gets large compared to what you add to it. The error is anyway still small enough to neglect for almost all applications.
Two ways to handle it are:
1. Keep the error and round off when presenting the number.
2. Add 1 every time and divide by 10 before using the number (you'll still need to round off, though).
Choosing the amount of digits when converting a Number to a String doesn't seem to be supported in code blocks though. Although it's not a bug it would be a missing feature ..
In the meantime in the "anything as text" block you could probably write "_Time.toFixed(1)" when you use the number in a draw or print block. I then assume _Time is the internal representation of the number you want to present (it would be the default but to be sure the internal representation of attributes can be seen on the attribute tab) and 1 means to get 1 digit after the decimal point. i.e. 3.2999 will be converted to the string "3.3".