C语言常用数学函数
2016-01-07 12:03
435 查看
#include<windows.h>//源代码已经在DEV-C++编译通过 #include<math.h> #include<iostream> using namespace std; const double pi = 2 * asin(1.0); int main() { //测试一下pi cout << "pi = " << pi << endl; cout << "pi / 2.0 = " << pi / 2.0 << endl; cout << "pi / 4.0 = " << pi / 4.0 << endl; cout << "//////////////////////////" << endl; //1 三角函数 //double sin (double); //double cos (double); //double tan (double); cout << "sin(pi / 2.0) = " << sin(pi / 2.0) << endl; cout << "cos(pi / 2.0) = " << cos(pi / 2.0) << endl;//6.12303e-017 表示0 cout << "tan(pi / 2.0) = " << tan(pi / 2.0) << endl;//1.63318e+016 表示无穷大 cout << "//////////////////////////" << endl; //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] //atan2(y,x)所表达的意思是坐标原点为起点, //指向(x,y)的射线在坐标平面上与x轴正方向之间的角的角度 cout << "asin(1.0) = " << asin(1) << endl; cout << "acos(1.0) = " << acos(1) << endl; cout << "atan(1.0) = " << atan(1) << endl; cout << "atan2(1.0,1.0) = " << atan2(1.0,1.0) << endl; cout << "//////////////////////////" << endl; //3 双曲三角函数 //double sinh (double);双曲正弦sinhx = (e^(x) - e^(-x)) / 2 //double cosh (double);双曲余弦coshx = (e^(x) + e^(-x)) / 2 //double tanh (double);双曲正切tanhx = (e^(x) - e^(-x)) / (e^(x) + e^(-x)) cout << "sinh(1.0) = " << sinh(1.0) << endl; cout << "cosh(1.0) = " << cosh(1.0) << endl; cout << "tanh(1.0) = " << tanh(1.0) << endl; cout << "//////////////////////////" << endl; //4 指数与对数 //double exp (double); //double pow (double x, double y); 计算x的y次方 //double log (double); 以e为底的对数 //double log10 (double); 以10为底的对数 cout << "exp(1.0) = " << exp(1.0) << endl; cout << "pow(2.0,10.0) = " << pow(2.0,10.0) << endl; cout << "log(1.0) = " << log(1.0) << endl; cout << "log10(1.0) = " << log10(1.0) << endl; cout << "//////////////////////////" << endl; //5 取整 //double ceil (double); 取上整 //double floor (double);取下整 cout << "ceil(1.66) = " << ceil(1.66) << endl; cout << "floor(1.66) = " << floor(1.66) << endl; cout << "//////////////////////////" << endl; //6 绝对值 //int abs(int);//求整数的绝对值 //double fabs (double);//求实数的绝对值 cout << "abs(-1) = " << abs(-1) << endl; cout << "fabs(-1.0) = " << fabs(-1.0) << endl; cout << "//////////////////////////" << endl; //7 标准化浮点数 //double frexp (double f, int *p);标准化浮点数, f = x*2^p,已知f求x, p(x介于[0.5,1]), //将p通过指针回传,返回x //double ldexp (double x, int p);与frexp相反, 已知x, p求f int *p = new int; cout << "x = frexp(12345.6789,p) = " << frexp(12345.6789,p) << endl; cout << "p = " << *p << endl; delete p; p = NULL; cout << "ldexp(1.23456789,12) = " << ldexp(1.23456789,12) << endl; cout << "//////////////////////////" << endl; //8 取整与取余 //double modf (double, double*);将参数的整数部分通过指针回传, 返回小数部分 //double fmod (double x, double y);返回x除以y的余数 double *q = new double; cout << "小数部分 = modf(88.88,p) = " << modf(88.88,q) << endl; cout <<"整数部分 = *q = " << *q << endl; cout << "fmod(10.0,3.0) = " << fmod(10.0,3.0) << endl; delete q; q = NULL; cout << "//////////////////////////" << endl; //9 开平方 //double sqrt (double); cout << "sqrt(9.0) = " << sqrt(9.0) << endl; cout << "//////////////////////////" << endl; system("pause"); return 0; }
相关文章推荐
- 两角和与差的三角函数公式的证明
- 几何画板中如何快速构造三角函数图像
- 三角函数
- [python]学习笔记6-python数字
- Oracle数据库之SQL单行函数---数字函数
- 〖数学算法〗开平方的七种算法
- 深入浅出的讲解傅里叶变换
- 三角函数公式表
- 一个基于NEON指令的数学库
- AS学习笔记一
- 实现随机测试的一种算法 推荐
- 平方根反正弦变换
- php取绝对值
- Silverlight & Blend动画设计系列十二:三角函数(Trigonometry)动画之自由旋转(Free-form rotation) 推荐
- Silverlight & Blend动画设计系列十三:三角函数(Trigonometry)动画之飘落的雪花(Falling Snow) 推荐
- 三角函数公式大全
- 反三角函数是什么?如何打出来?
- 最快的开平方 sqrt 算法,供赏析
- Leet Code 69 Sqrt(x) - 开平方 - Java
- 一道三角函数相关级数求和问题