This is what Alteryx Support said. Important information.
I spoke with one of our Principal Engineers and he told me that this is expected behavior because Alteryx converts all numbers to a Double when doing math operations and then converts them back to the original data type. This can result in a loss of precision due to how computers store floating point numbers.
The number 38.55 is 38.5499999999999971578290569595992565155029296875 to a computer.
When you multiply this by 100, the number becomes 3854.999999.... and the floor function then converts it to 3854.
A way to avoid this would be to round your number to two decimal places first. I recommend changing the formula to below:
FLOOR(Round( 3355 , .01) * 100 )
Rounding to two decimal places first (or in some cases rounding to 4 decimal places and then rounding again to 2 decimal places) is recommended for operations in financial math.