Точность определяется типом данных (т. Е. С плавающей или двойной или длинной двойной).
Если вы хотите округлить его в целях печати, вы можете использовать соответствующие спецификаторы формата в printf (), т.е.
printf("%0.3f\n", 0.666666666) //will print 0.667 in c
Теперь, если вы хотите округлить его для целей расчета, вы должны сначала умножить число с плавающей запятой на 10 ^ цифр, затем выполнить приведение к int, выполнить вычисление, а затем снова выполнить приведение к вычислению и разделить на ту же степень10
float f=0.66666;
f *= 1000; // 666.660
int i = (int)f; // 666
i = 2*i; // 1332
f = i; // 1332
f /= 1000; // 1.332
printf("%f",f); //1.332000