3.3 数学函数库
优质
小牛编辑
136浏览
2023-12-01
数学函数库使程序员可以进行某些常见数学计算。我们这里用各种数学库函数介绍函数概念。本书稍后会介绍c++标准库中的许多其他函数。
调用函数时,通常写上函数名,然后是一对括号,括号中写上函数参数(或逗号分隔的参数表)。例如程序员可以用下列语句计算和打印900.0的平方根:
cout << sqrt(900.0);
执行这个语句时,数学库函数sqrt计算括号中所包含数字(900.0)的平方根。数字900.0是sqrt函数的参数。上述语句打印30。sqrtd函数取double类型参数,返回double类型结果。数学函数库中的所有函数都返回double类型结果。要使用数学库函数,需要在程序中包含math.h头文件(这个头文件在新的C++标准库中称为cmath)。
常见编程错误3.1
使用数学库孙数而不包括math.h文件是个语法错误。程序中使用的每个标准库函数都应包括标准头文件。
函数参数可取常量、变量或表达式。如果c1=13.0、d=3.0和f=4.0,则下列语句:
cout << sqrt (cl + d * f);
计算并打印13.0+3.0*4.0=25.0的平方根,即5(因为C++通常对没有小数部分的浮点数不打印小数点和后面的零)。
图3.2总结了一些数学库函数。图中变量x和y为double类型。
函数 | 说明 | 举例 |
ceil(x) | 将x取整为不小于x的最小整数 | ceil(9.2)=10.0 ceil(-9.8)=-9.0 |
cos(x) | x(弧度)的余弦 | cos(0.0)=1.0 |
exp(x) | 指数函数ex | exp(1.0)=2.71828 exp(2.0)=7.38906 |
fabs(x) | x的绝对值 | x>0,abs(x)=x x=0,abs(x)=0.0 x<0,abs(x)=-x |
floor(x) | 将x取整为不大于x的最大整数 | floor(9.2)=9.0 floor(-9.8)=-10.0 |
fmod(x,y) | x/y的浮点数余数 | fmod(13.657,2.333)=1.992 |
log(x) | x的自然对数(底数为e) | log(2.718282)=1.0 log(7.389056)=2.0 |
log10(x) | x的对数(底数为10) | log(10.0)=1.0 log(100.0)=2.0 |
pow(x,y) | x的y次方(xy) | pow(2,7)=128 pow(9,.5)=3 |
sin(x) | x(弧度)的正弦 | sin(0.0)=0 |
sqrt(x) | x的平方根 | sqrt(900.0)=30.0 sqrt(9.0)=3.0 |
tan(x) | x(弧度的正切 | tan(0.0)=0 |