攻城狮凌风

C/C++常用数学函数

math.h/cmath(C++)数学函数库

1 三角函数
   double sin (double);
   double cos (double);
   double tan (double);


2 反三角函数
   double asin (double); 结果介于[-PI/2,PI/2]
   double acos (double); 结果介于[0, PI]
   double atan (double); 反正切(主值),结果介于[-PI/2,PI/2]
   double atan2 (double, double); 反正切(整圆值),结果介于[-PI/2,PI/2]


3 双曲三角函数
   double sinh (double);
   double cosh (double);
   double tanh (double);

4 指数与对数

   double exp (double);
   double pow (double, double);

  1.      double pow (      double base,      double exponent );  
  2. long double pow ( long double base, long double exponent );  
  3.       float pow (       float base,       float exponent );  
  4.      double pow (      double base,         int exponent );  
  5. long double pow ( long double base,         int exponent );  

   double sqrt (double);
  double log (double); 以e为底的对数
  double log10 (double);ln=log(N),log10(N)

   但是没有以2为底的函数。可以用换底公式解决:log2(N)=log10(N)/log10(2)。VS2010中,log(243.0)/log(3.0),计算出的结果实际为4,答案错误。有的时候我使用log(243.0+0.1)/log(3.0)这种格式取对数。


5 取整
   double ceil (double); 取上整
   double floor (double); 取下整

6 绝对值
   double fabs (double);

7 标准化浮点数
   double frexp (double f, int *p); 标准化浮点数, f = x *2^p,已知f求x, p ( x介于[0.5, 1])
   double ldexp (double x, int p); 与frexp相反,已知x, p求f

8 取整与取余
   double modf (double, double*); 将参数的整数部分通过指针回传,返回小数部分
   double fmod (double, double); 返回两参数相除的余数


9 平方根

  1.    double sqrt (      double x );  
  2.       float sqrt (       float x );  
  3. long double sqrt ( long double x );  

 

posted on 2014-08-29 16:55  攻城狮凌风  阅读(435)  评论(0编辑  收藏  举报

导航