Welcome to the point of this exercise! ;-)
Floats are very rarely stored as exact values in a computer because they have to be converted from base 10 to base 2. If you were to print out the value stored in x, you would see that it is not 2.10, but something very close, like 2.0999999998735 (or something very similar), but ever so slightly less than 2.10. When displayed to 2 decimals, it is rounded to the closest decimal, unless you format it to display enough digits.
When multiplied by 100, it becomes 209.99999998735. The reason that you are getting 209 is that the code is assigning x*100 to c, an int. When a float is assigned to an int, the decimal portion of the number is truncated, so it becomes 209. It is NOT rounded up to 210.
Maybe it's time to explore whether there are any rounding functions and how to use them? ;-)
If this answers your question, please click on the check mark to accept. Let's keep up on forum maintenance. ;-)