在论坛里看到了一个人的提问,关于如何截断浮点数小数部分的问题。我的第一感觉是使用字符串处理(呵呵,估计知道floor函数的人都会笑话我了)。的确,用C++也算挺久了,竟然不知道C++库中的floor函数,可以轻易实现这个功能,唉,感慨~~~~
就不多说别的了,下面说一下关于floor函数:
1、函数原型:
1 double floor ( double x ); 2 float floor ( float x ); 3 long double floor ( long double x );
2、功能:返回一个小于传入参数的最大整数
3、参数:x为将来被处理的数
4、返回值:返回不大于x的最大整数
5、注在C语言中只有double一个原型
6、示例程序
1 #include <stdio.h> 2 #include <math.h> 3 4 int main () 5 { 6 printf ("floor of 2.3 is %.1lf/n", floor (2.3) ); 7 printf ("floor of 2.6 is %.1lf/n", floor (2.6) ); 8 printf ("floor of -2.3 is %.1lf/n", floor (-2.3) ); 9 printf ("floor of -2.6 is %.1lf/n", floor (-2.6) ); 10 return 0; 11 }
输出:
floor of 2.3 is 2.0 floor of 2.6 is 2.0 floor of -2.3 is -3.0 floor of -2.6 is -3.0 |
总结一点,有时间一定要好好学习一个C++ 标准库