# Write a one line C function to round floating point numbers

Algorithm: roundNo(num)
1. If num is positive then add 0.5.
2. Else subtract 0.5.
3. Type cast the result to int and return.

Example:
num = 1.67, (int) num + 0.5 = (int)2.17 = 2
num = -1.67, (int) num – 0.5 = -(int)2.17 = -2

Implementation:

 `/* Program for rounding floating point numbers */` `# include ` ` `  `int` `roundNo(``float` `num) ` `{ ` `    ``return` `num < 0 ? num - 0.5 : num + 0.5; ` `} ` ` `  `int` `main() ` `{ ` `    ``printf``(``"%d"``, roundNo(-1.777)); ` `    ``getchar``(); ` `    ``return` `0; ` `} `

Output: -2

Time complexity: O(1)
Space complexity: O(1)

Now try rounding for a given precision. i.e., if given precision is 2 then function should return 1.63 for 1.63322 and -1.63 for 1.6332.

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Previous
Next