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