The division operator is different from the others; it can function very differently depending on the data types of its two operands. If you divide two integer type values: int or char, the result will be an integer which can be stored in int or char, depending on its size. If one or both of its operands is a floating point type: float or double, the result will be a floating point number which can be stored in float or double, depending on its size. It is crucial to remember this because you can easily lose the fractional part of the number if you aren't careful.
In the following example, even though the expression on the left is being assigned to the float variable c, the result is truncated, losing its fractional part.