Why does 5/2 results in '2' even when I use a float? <p>I entered the following code (and had no compiling problems or anything):</p> <pre><code>float y = 5/2; printf("%f\n", y); </code></pre> <p>The output was simply: <code>2.00000</code></p> <p>My math isn't wrong is it? Or am I wrong on the / operator? It means divide doesn't it? And 5/2 should equal 2.5?</p> <p>Any help is greatly appreciated!</p>