superior - ¿Cómo redondear un doble al int más pequeño más cercano en C?
rint() (4)
Donde x es tu 25.342
int i = x> = 0? (int) (x + 0.5): (int) (x-0.5)
Tengo un doble:
double d = 25.342;
¿Cómo puedo convertirlo a 25
valores?
Si fuera -12.46
me gustaría obtener -13
.
int i = (int)floor(25.342);
int i = (int)floor(25.342);
Tenga en cuenta que esto convertirá 12.99999 a 12.
Árbitro:
#include <math.h>
#include <stdio.h>
int main(){
double d = 25.342;
double e = -12.99;
printf("%d/n",(int)round(d)); // 25
printf("%d/n",(int)round(e)); // -13
return 0;
}
También es posible que desee echar un vistazo a stdint.h