I need C code for roundin开发者_StackOverflowg up a double value to the next greatest integer value.
For example, if I have:
1.0 (double)
it must be 1 (int)
1.01 (double)
it must be 2 (int)
5.67 (double)
it must be 6 (int)
76.43 (double)
it must be 77 (int)
Is there a solution?
Use the ceil()
function from <math.h>
:
#include <math.h>
double x = 1.01; // x = 1.01
double y = ceil(x); // y = 2.0
int i = (int)y; // i = 2
or more concisely, if you just want the int result:
int i = (int)ceil(x);
Let's say your float number is nr
.
No build-in functions:
float nr;
int temp;
if (nr % 10 > 0) {
temp = nr++;
} else {
temp = nr;
}
nr = temp;
精彩评论