Una sencilla forma de redondear un número decimal en c es utilizando la función sprintf o directamente printf si queremos imprimir el número en pantalla, sin almacenarlo en una variable. Además podremos definir cuántos decimales deberá tener el número redondeado. Veamos cómo:
float num = 3.14159; printf("%.2f\n",num);
Este printf mostrará en pantalla "3.14" ya que le hemos dicho que imprima un número decimal con dos posiciones decimales (el .2). Si en vez de imprimirlo en pantalla queremos guardarlo en una variable podemos utilizar la función sprintf.
float num = 3.14159; char redondeado[16]; sprintf(redondeado,"%.2f\n",num);
Ahora en "redondeado" tenemos una cadena con el número.
Redactado por Nenillo