C++math库函数
- 格式:doc
- 大小:26.50 KB
- 文档页数:3
函数名称: abs函数原型: int abs(int x);函数功能: 求整数x的绝对值函数返回: 计算结果参数说明:所属文件: <>,<>使用范例:#include <>#include <>int main(){int number=-1234;printf("number: %d absolute value: %d",number,abs(number)); return 0;}@函数名称: fabs函数原型: double fabs(double x);函数功能: 求x的绝对值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){float number=;printf("number: %f absolute value: %f",number,fabs(number)); return 0;}@函数名称: cabs函数原型: double cabs(struct complex znum)函数功能: 求复数的绝对值函数返回: 复数的绝对值参数说明: zuum为用结构struct complex表示的复数,定义如下:struct complex{double m;double n;}所属文件: <>#include <>#include <>int main(){struct complex z;double val;=;=;val=cabs(z);printf("The absolute value of %.2lfi %.2lfj is %.2lf",,,val); return 0;}@函数名称: ceil函数原型: double ceil(double num)函数功能: 得到不小于num的最小整数函数返回: 用双精度表示的最小整数参数说明: num-实数所属文件: <>#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: sin函数原型: double sin(double x);函数功能: 计算sinx的值.正弦函数函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x=;result=sin(x);printf("The sin() of %lf is %lf",x,result); return 0;}@函数名称: cos函数原型: double cos(double x);函数功能: 计算cos(x)的值.余弦函数.函数返回: 计算结果参数说明: x的单位为弧度所属文件: <>使用范例:#include <>#include <>int main()double result;double x=;result=cos(x);printf("The cosine of %lf is %lf",x,result);return 0;}@函数名称: tan函数原型: double tan(double x);函数功能: 计算tan(x)的值,即计算角度x的正切数值函数返回: 计算结果参数说明: x>=0单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tan(x);printf("The tan of %lf is %lf",x,result);return 0;}@函数名称: asin函数原型: double asin(double x);函数功能: 计算sin^-1(x)的值.反正弦值函数函数返回: 计算结果参数说明: x应在 -1 到 1 范围内.单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=asin(x);printf("The arc sin of %lf is %lf",x,result); return 0;}@函数名称: acos函数原型: double acos(double x);函数功能: 计算cos^-1(x)的值,反余弦函数函数返回: 计算结果参数说明: x应在-1到1范围内.切记单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=acos(x);printf("The arc cosine of %lf is %lf",x,result); return 0;}@函数名称: atan函数原型: double atan(double x);函数功能: 计算tan^-1(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=atan(x);printf("The arc tangent of %lf is %lf",x,result);return 0;}@函数名称: atan2函数原型: double atan2(double x,double y);函数功能: 计算tan^-1/(x/y)的值.求x/y的反正切值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=,y=;result=atan2(y,x);printf("The arc tangent ratio of %lf is %lf",(y/x),result); return 0;}@函数名称: sinh函数原型: double sinh(double x);函数功能: 计算x的双曲正弦函数sinh(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x=;result=sinh(x);printf("The hyperbolic sin() of %lf is %lf",x,result); return 0;}@函数名称: cosh函数原型: double cosh(double x);函数功能: 计算x的双曲余弦cosh(x)的值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=cosh(x);printf("The hyperboic cosine of %lf is %lf",x,result); return 0;}@函数名称: tanh函数原型: double tanh(double x);函数功能: 计算x的双曲正切函数tanh(x)的值.函数返回: 计算结果参数说明: x>=0所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tanh(x);printf("The hyperbolic tangent of %lf is %lf",x,result); return 0;}@函数名称: exp函数原型: double exp(double x);函数功能: 求e的x次幂函数返回: 计算结果.幂的值参数说明: x-指数所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=exp(x);printf("'e' raised to the power of %lf(e^%lf)=%lf",x,x,result); return 0;}@函数名称: floor函数原型: double floor(double x);函数功能: 求出不大于x的最大整数.函数返回: 该整数的双精度实数参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: fmod函数原型: double fmod(double x,double y);函数功能: 求整数x/y的余数函数返回: 返回余数的双精度数.x/y的余数值.参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;double result;result=fmod(x,y);printf("The remainder of (%lf/%lf) is %lf",x,y,result);return 0;}@函数名称: frexp函数原型: double frexp(double val,int *eptr);函数功能: 把双精度数val分解为数字部分(尾数)x和以2为底的指数n,即val=x*2^n,n存放在eptr指向的变量中.函数返回: 返回数字部分x,<=x且x<1参数说明: val-待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double mantissa,number;int exponent;number=;mantissa=frexp(number,&exponent);printf("The number %lf is",number);printf("%lf times two to the",mantissa);printf("power of %d",exponent);return 0;}@函数名称: log函数原型: double log(double x);函数功能: 求logeX(e指的是以e为底),即计算x的自然对数(ln X) 函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log(x);printf("The natural log of %lf is %lf",x,result);return 0;}@函数名称: log10函数原型: double log10(double x);函数功能: 求log10x(10指的是以10为底).计算x的常用对数函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log10(x);printf("The common log of %lf is %lf",x,result);return 0;}@函数名称: modf函数原型: double modf(double val,double *iptr);函数功能: 把双精度数val分解为整数部分和小数部分,把整数部分存到iptr指向的单元. 函数返回: val的小数部分参数说明: val 待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double fraction,integer;double number=;fraction=modf(number,&integer);printf("The whole and fractional parts of %lf are %lf and%lf",number,integer,fraction);}@函数名称: pow函数原型: double pow(double x,double y);函数功能: 计算以x为底数的y次幂,即计算x^y的值. 函数返回: 计算结果参数说明: x-底数,y-幂数所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;printf("%lf raised to %lf is %lf",x,y,pow(x,y)); return 0;}@函数名称: sqrt函数原型: double sqrt(double x);函数功能: 计算x的开平方.函数返回: 计算结果参数说明: x>=0所属文件: <>#include <>#include <>int main(){double x=,result;result=sqrt(x);printf("The square root of %lf is %lf",x,result); return 0;}@函数名称: hypot函数原型: double hypot(double x,double y)函数功能: 已知直角三角形两个直角边长度,求斜边长度函数返回: 斜边长度参数说明: x,y-直角边长度所属文件: <>#include <>#include <>int main(){double result;double x=;double y=;result=hypot(x,y);printf("The hypotenuse is: %lf",result);return 0;}@函数名称: poly函数原型: double poly(double x,int degree,double coeffs[])函数功能: 计算多项式函数返回: 多项式的计算结果参数说明: 计算c[n]*x^n+c[n-1]x^n-1+.....+c[1]*x+c[0]所属文件: <>#include <>#include <>int main(){double array[]={,,,};double result;result=poly,3,array);printf("The polynomial: x**3 - **2 + 5x - 1 at is %lf",result); return 0;}@函数名称: matherr函数原型: int matherr(struct exception *e)函数功能: 数学错误计算处理程序函数返回:参数说明: 该函数不能被直接调用,而是被库函数_matherr()调用所属文件: <>#include<>int matherr(struct exception *a){return 1;}@函数名称: ldexp函数原型: double ldexp(double x,int exponent)函数功能: 计算x*2的exponent次幂,即2*pow(2,exponent)的数值函数返回:参数说明:所属文件: <>#include <>#include <>int main(){double value;double x=2;value=ldexp(x,3);printf("The ldexp value is: %lf",value);return 0;}int abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(double x) 返回双精度参数x的绝对值long labs(long n) 返回长整型参数n的绝对值double exp(double x) 返回指数函数ex的值double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值double log(double x) 返回logex的值double log10(double x) 返回log10x的值double pow(double x,double y) 返回xy的值double pow10(int p) 返回10p的值double sqrt(double x) 返回+√x的值double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度double atan(double x) 返回x的反正切tan-1(x)值,x为弧度double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度double sin(double x) 返回x的正弦sin(x)值,x为弧度double tan(double x) 返回x的正切tan(x)值,x为弧度double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度double hypot(double x,double y) 返回直角三角形斜边的长度(z),x和y为直角边的长度,z2=x2+y2double ceil(double x) 返回不小于x的最小整数double floor(double x) 返回不大于x的最大整数void srand(unsigned seed) 初始化随机数发生器int rand() 产生一个随机数并返回这个数double poly(double x,int n,double c[])从参数产生一个多项式double modf(double value,double *iptr)将双精度数value分解成尾数和阶double fmod(double x,double y) 返回x/y的余数double frexp(double value,int *eptr) 将双精度数value分成尾数和阶double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数char *ecvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *fcvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *gcvt(double value,int ndigit,char *buf)将数value转换成字符串并存于buf中,并返回buf的指针char *ultoa(unsigned long value,char *string,int radix)将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *ltoa(long value,char *string,int radix)将长整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *itoa(int value,char *string,int radix)将整数value转换成字符串存入string,radix为转换时所用基数double atof(char *nptr) 将字符串nptr转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0 double strtod(char *str,char **endptr)将字符串str转换成双精度数,并返回这个数, long strtol(char *str,char **endptr,int base)将字符串str转换成长整型数,并返回这个数,int matherr(struct exception *e)用户修改数学错误返回信息函数(没有必要使用)double _matherr(_mexcep why,char *fun,double *arg1p, double *arg2p,double retval)用户修改数学错误返回信息函数(没有必要使用)unsigned int _clear87() 清除浮点状态字并返回原来的浮点状态void _fpreset() 重新初使化浮点数学程序包unsigned int _status87() 返回浮点状态字。
cmath中的函数cmath是一个C++标准库,是C++中常用的数学库之一。
cmath库中包含了很多数学函数,可以用于处理复杂的数学运算。
本文将介绍几个常见的cmath函数。
1. sqrt()sqrt()函数用于计算一个数的平方根。
语法为:sqrt(x),其中x是要计算的数。
例如,sqrt(16)将返回4,因为4的平方是16。
2. pow()pow()函数用于计算一个数字的次方。
语法为:pow(x,y),其中x是底数,y是指数。
例如,pow(2,3)将返回8,因为2的3次方是8。
3. log()log()函数用于计算一个数字的自然对数。
语法为:log(x),其中x是要计算的数。
例如,log(10)将返回2.30259,这是10的自然对数。
4. exp()exp()函数用于计算e的x次方。
语法为:exp(x),其中x是指数。
例如,exp(1)将返回2.71828,这是e的1次方。
5. sin()sin()函数用于计算一个角度的正弦值。
语法为:sin(x),其中x是要计算的角度(以弧度为单位)。
例如,sin(0)将返回0,因为sin(0°)=0。
6. cos()cos()函数用于计算一个角度的余弦值。
语法为:cos(x),其中x是要计算的角度(以弧度为单位)。
例如,cos(0)将返回1,因为cos(0°)=1。
7. tan()tan()函数用于计算一个角度的正切值。
语法为:tan(x),其中x是要计算的角度(以弧度为单位)。
例如,tan(0)将返回0,因为tan(0°)=0。
总之,cmath库中的函数可以帮助我们计算各种各样的数学运算,包括平方根、次方、自然对数、指数、三角函数等等。
在编写C++程序时,如果需要进行数学计算,可以考虑使用cmath库中的函数,简化代码的编写,提高程序的效率。
cmath是c++语言中的库函数,其中的c表示函数是来自c标准库的函数,math为数学常用库函数。
cmath 库函数列表:using ::abs; //绝对值using ::acos; //反余弦using ::acosf; //反余弦using ::acosl; //反余弦using ::asin; //反正弦using ::asinf; //反正弦using ::asinl; //反正弦using ::atan; //反正切using ::atan2; //y/x的反正切using ::atan2f; //y/x的反正切using ::atan2l; //y/x的反正切using ::atanf; //反正切using ::atanl; //反正切using ::ceil; //上取整using ::ceilf; //上取整using ::ceill; //上取整using ::cos; //余弦using ::cosf; //余弦using ::cosh; //双曲余弦using ::coshf; //双曲余弦using ::coshl; //双曲余弦using ::cosl; //余弦using ::exp; //指数值using ::expf; //指数值using ::expl; //指数值using ::fabs; //绝对值using ::fabsf; //绝对值using ::fabsl; //绝对值using ::floor; //下取整using ::floorf; //下取整using ::floorl; //下取整using ::fmod; //求余using ::fmodf; //求余using ::fmodl; //求余using ::frexp; //返回value=x*2n中x的值,n存贮在eptr中using ::frexpf; //返回value=x*2n中x的值,n存贮在eptr中using ::frexpl; //返回value=x*2n中x的值,n存贮在eptr中using ::ldexp; //返回value*2exp的值using ::ldexpf; //返回value*2exp的值using ::ldexpl; //返回value*2exp的值using ::log; //对数using ::log10; //对数using ::log10f; //对数using ::log10l; //对数using ::logf; //对数using ::logl; //对数using ::modf; //将双精度数value分解成尾数和阶using ::modff; //将双精度数value分解成尾数和阶using ::modfl; //将双精度数value分解成尾数和阶using ::pow; //计算幂using ::powf; //计算幂using ::powl; //计算幂using ::sin; //正弦using ::sinf; //正弦using ::sinh; //双曲正弦using ::sinhf; //双曲正弦using ::sinhl; //双曲正弦using ::sinl; //正弦using ::sqrt; //开方using ::sqrtf; //开方using ::sqrtl; //开方using ::tan; //正切using ::tanf; //正切using ::tanh; //双曲正切using ::tanhf; //双曲正切using ::tanhl; //双曲正切using ::tanl; //正切。
C语言是一种非常重要的计算机编程语言,广泛应用于系统软件、应用软件、嵌入式系统、驱动程序等领域。
math库是C语言中非常常用的数学库,提供了很多数学函数供程序员使用。
其中,sqrt函数是math库中的一个常用函数,用于计算一个数的平方根。
本文将讨论C 语言math库对sqrt函数的实现方法。
1. sqrt函数概述让我们来了解一下sqrt函数的概述。
sqrt函数用于计算一个数的平方根,其原型如下:double sqrt(double x);其中,x为要计算平方根的数,函数返回x的平方根。
sqrt函数定义在math.h头文件中,因此在使用sqrt函数之前,需要包含math.h头文件。
2. sqrt函数的实现原理接下来,我们来分析一下sqrt函数的实现原理。
在C语言中,sqrt函数通常是由系统底层的数学库实现的,具体的实现方式可能因系统而异。
一种常见的实现方式是使用牛顿迭代法来计算平方根。
牛顿迭代法是一种用途广泛的求解方程近似解的方法,其具体步骤如下:(1) 选取一个初始值作为计算的起点,假设为y0;(2) 根据迭代公式y = (y0 + x / y0) / 2计算下一个近似值y;(3) 判断计算结果与精度要求的差距,如果小于精度要求,则停止迭代,取当前的y值作为最终结果;否则,将y作为新的y0,重复步骤(2);(4) 最终得到的y值即为所求的平方根。
3. sqrt函数的具体实现针对不同的系统和评台,sqrt函数的实现可能会有一定的差异。
我们以标准的C语言为例,来简单介绍一种可能的sqrt函数实现方法。
```c#include <math.h>double sqrt(double x) {double y0, y = x, temp;if (x == 0.0 || x == 1.0) {return x;}do {y0 = y;temp = x / y0;y = (y0 + temp) / 2;} while (y != y0);return y;}```上述代码是对sqrt函数的一种简单实现,采用了牛顿迭代法来计算平方根。
c++ 代码实现三角函数sin
要在C++中实现三角函数sin,可以使用标准库中的数学函数库`<cmath>`中的sin函数。
下面是一个简单的示例代码:
cpp.
#include <iostream>。
#include <cmath>。
int main() {。
double angle = 30.0; // 角度,单位为度。
double radians = angle M_PI / 180.0; // 将角度转换为弧度。
double result = sin(radians); // 计算sin值。
std::cout << "sin(" << angle << ") = " << result <<
std::endl;
return 0;
}。
在这个示例代码中,我们首先定义了一个角度变量`angle`,然后将其转换为弧度表示`radians`。
接下来,使用`sin`函数计算弧度对应的sin值,并将结果存储在`result`变量中。
最后,使用
`std::cout`打印出计算结果。
需要注意的是,C++的三角函数库中的三角函数都接受弧度作为参数,因此在计算之前需要将角度转换为弧度。
这里使用了`M_PI`常量,它表示圆周率π,定义在`<cmath>`头文件中。
这只是一个简单的示例,你可以根据自己的需求进行更复杂的计算和应用。
希望这个回答能够满足你的需求。
详细请查看/cpp/u/math_h//cpp/u/biaozhunku/头文件:#include <math.h>acos() 函数返回一个以弧度表示的反余弦值,其原型为:double acos (double x);【参数】x 为余弦值,范围为-1 到1 之间,超出此范围将会导致错误,并设置errno 的值为EDOM.【返回值】返回0 至π 之间的计算结果,单位为弧度,在函数库中角度均以弧度来表示。
弧度与角度的关系为:弧度= 180 / π 角度角度= π / 180 弧度注意:使用GCC 编译时请加入-lm。
【实例】求0.5 的反余弦。
1.#include <math.h>2.main(){3.double angle;4.angle = acos(0.5);5.printf("angle = %f\n", angle);6.}运行结果:angle = 1.047198又如,由余弦值求对应的角度。
1.#include<stdio.h>2.#include<math.h>3.int main(void)4.{5.double angl,result;6.angl = 1;7.result =acos(cos(angl));/*求反余弦值*/8.printf("acos(%lf) is %lf\n",cos(angl),result);/*格式化输出*/9.angl = 3.1415926;10.result = acos(cos(angl));/*求反余弦值*/11.printf("acos(%lf) is %lf\n",cos(angl),result);/*格式化输出*/12.return 0;13.}运行结果:acos(0.540302) is 1.000000acos (-1.000000) is 3.141593这个例子可以对照余弦函数例子学习,示例中都是使用余弦值作为参数,然后再使用acos() 函数求出该角度以便对比。
函数名称: abs函数原型: int abs(int x);函数功能: 求整数x的绝对值函数返回: 计算结果参数说明:所属文件: <>,<>使用范例:#include <>#include <>int main(){int number=-1234;printf("number: %d absolute value: %d",number,abs(number));return 0;}@函数名称: fabs函数原型: double fabs(double x);函数功能: 求x的绝对值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){float number=;printf("number: %f absolute value: %f",number,fabs(number));return 0;}@函数名称: cabs函数原型: double cabs(struct complex znum)函数功能: 求复数的绝对值函数返回: 复数的绝对值参数说明: zuum为用结构struct complex表示的复数,定义如下:struct complex{double m;double n;}所属文件: <>#include <>#include <>int main(){struct complex z;double val;=;=;val=cabs(z);printf("The absolute value of %.2lfi %.2lfj is %.2lf",,,val); return 0;}@函数名称: ceil函数原型: double ceil(double num)函数功能: 得到不小于num的最小整数函数返回: 用双精度表示的最小整数参数说明: num-实数所属文件: <>#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: sin函数原型: double sin(double x);函数功能: 计算sinx的值.正弦函数函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>int main(){double result,x=;result=sin(x);printf("The sin() of %lf is %lf",x,result);return 0;}@函数名称: cos函数原型: double cos(double x);函数功能: 计算cos(x)的值.余弦函数.函数返回: 计算结果参数说明: x的单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=cos(x);printf("The cosine of %lf is %lf",x,result);return 0;}@函数名称: tan函数原型: double tan(double x);函数功能: 计算tan(x)的值,即计算角度x的正切数值函数返回: 计算结果参数说明: x>=0单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tan(x);printf("The tan of %lf is %lf",x,result);}@函数名称: asin函数原型: double asin(double x);函数功能: 计算sin^-1(x)的值.反正弦值函数函数返回: 计算结果参数说明: x应在-1 到 1 范围内.单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=asin(x);printf("The arc sin of %lf is %lf",x,result);return 0;}@函数名称: acos函数原型: double acos(double x);函数功能: 计算cos^-1(x)的值,反余弦函数函数返回: 计算结果参数说明: x应在-1到1范围内.切记单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=acos(x);printf("The arc cosine of %lf is %lf",x,result);return 0;}@函数名称: atan函数原型: double atan(double x);函数功能: 计算tan^-1(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=atan(x);printf("The arc tangent of %lf is %lf",x,result);return 0;}@函数名称: atan2函数原型: double atan2(double x,double y);函数功能: 计算tan^-1/(x/y)的值.求x/y的反正切值. 函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=,y=;result=atan2(y,x);printf("The arc tangent ratio of %lf is %lf",(y/x),result); return 0;}@函数名称: sinh函数原型: double sinh(double x);函数功能: 计算x的双曲正弦函数sinh(x)的值.函数返回: 计算结果参数说明: 单位为弧度所属文件: <>使用范例:#include <>int main(){double result,x=;result=sinh(x);printf("The hyperbolic sin() of %lf is %lf",x,result); return 0;}@函数名称: cosh函数原型: double cosh(double x);函数功能: 计算x的双曲余弦cosh(x)的值.函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=cosh(x);printf("The hyperboic cosine of %lf is %lf",x,result); return 0;}@函数名称: tanh函数原型: double tanh(double x);函数功能: 计算x的双曲正切函数tanh(x)的值. 函数返回: 计算结果参数说明: x>=0所属文件: <>使用范例:#include <>#include <>int main(){double result,x;x=;result=tanh(x);printf("The hyperbolic tangent of %lf is %lf",x,result);}@函数名称: exp函数原型: double exp(double x);函数功能: 求e的x次幂函数返回: 计算结果.幂的值参数说明: x-指数所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=exp(x);printf("'e' raised to the power of %lf(e^%lf)=%lf",x,x,result); return 0;}@函数名称: floor函数原型: double floor(double x);函数功能: 求出不大于x的最大整数.函数返回: 该整数的双精度实数参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double number=;double down,up;down=floor(number);up=ceil(number);printf("original number %",number);printf("number rounded down %",down);printf("number rounded up %",up);return 0;}@函数名称: fmod函数原型: double fmod(double x,double y);函数功能: 求整数x/y的余数函数返回: 返回余数的双精度数.x/y的余数值.参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;double result;result=fmod(x,y);printf("The remainder of (%lf/%lf) is %lf",x,y,result);return 0;}@函数名称: frexp函数原型: double frexp(double val,int *eptr);函数功能: 把双精度数val分解为数字部分(尾数)x和以2为底的指数n,即val=x*2^n,n存放在eptr 指向的变量中.函数返回: 返回数字部分x,<=x且x<1参数说明: val-待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double mantissa,number;int exponent;number=;mantissa=frexp(number,&exponent);printf("The number %lf is",number);printf("%lf times two to the",mantissa);printf("power of %d",exponent);return 0;}@函数名称: log函数原型: double log(double x);函数功能: 求logeX(e指的是以e为底),即计算x的自然对数(ln X)函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log(x);printf("The natural log of %lf is %lf",x,result);return 0;}@函数名称: log10函数原型: double log10(double x);函数功能: 求log10x(10指的是以10为底).计算x的常用对数函数返回: 计算结果参数说明:所属文件: <>使用范例:#include <>#include <>int main(){double result;double x=;result=log10(x);printf("The common log of %lf is %lf",x,result);return 0;}@函数名称: modf函数原型: double modf(double val,double *iptr);函数功能: 把双精度数val分解为整数部分和小数部分,把整数部分存到iptr指向的单元. 函数返回: val的小数部分参数说明: val 待分解的数所属文件: <>使用范例:#include <>#include <>int main(){double fraction,integer;double number=;fraction=modf(number,&integer);printf("The whole and fractional parts of %lf are %lf and%lf",number,integer,fraction);return 0;}@函数名称: pow函数原型: double pow(double x,double y);函数功能: 计算以x为底数的y次幂,即计算x^y的值. 函数返回: 计算结果参数说明: x-底数,y-幂数所属文件: <>使用范例:#include <>#include <>int main(){double x=,y=;printf("%lf raised to %lf is %lf",x,y,pow(x,y));return 0;}@函数名称: sqrt函数原型: double sqrt(double x);函数功能: 计算x的开平方.函数返回: 计算结果参数说明: x>=0所属文件: <>使用范例:#include <>#include <>int main(){double x=,result;result=sqrt(x);printf("The square root of %lf is %lf",x,result);return 0;}@函数名称: hypot函数原型: double hypot(double x,double y)函数功能: 已知直角三角形两个直角边长度,求斜边长度函数返回: 斜边长度参数说明: x,y-直角边长度所属文件: <>#include <>#include <>int main(){double result;double x=;double y=;result=hypot(x,y);printf("The hypotenuse is: %lf",result);return 0;}@函数名称: poly函数原型: double poly(double x,int degree,double coeffs[]) 函数功能: 计算多项式函数返回: 多项式的计算结果参数说明: 计算c[n]*x^n+c[n-1]x^n-1+.....+c[1]*x+c[0]所属文件: <>#include <>#include <>int main(){double array[]={,,,};double result;result=poly,3,array);printf("The polynomial: x**3 - **2 + 5x - 1 at is %lf",result); return 0;}@函数名称: matherr函数原型: int matherr(struct exception *e)函数功能: 数学错误计算处理程序函数返回:参数说明: 该函数不能被直接调用,而是被库函数_matherr()调用所属文件: <>#include<>int matherr(struct exception *a){return 1;}@函数名称: ldexp函数原型: double ldexp(double x,int exponent)函数功能: 计算x*2的exponent次幂,即2*pow(2,exponent)的数值函数返回:参数说明:所属文件: <>#include <>#include <>int main(){double value;double x=2;value=ldexp(x,3);printf("The ldexp value is: %lf",value);return 0;}int abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(double x) 返回双精度参数x的绝对值long labs(long n) 返回长整型参数n的绝对值double exp(double x) 返回指数函数ex的值double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值double log(double x) 返回logex的值double log10(double x) 返回log10x的值double pow(double x,double y) 返回xy的值double pow10(int p) 返回10p的值double sqrt(double x) 返回+√x的值double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度double atan(double x) 返回x的反正切tan-1(x)值,x为弧度double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度double sin(double x) 返回x的正弦sin(x)值,x为弧度double tan(double x) 返回x的正切tan(x)值,x为弧度double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度double hypot(double x,double y) 返回直角三角形斜边的长度(z),x和y为直角边的长度,z2=x2+y2double ceil(double x) 返回不小于x的最小整数double floor(double x) 返回不大于x的最大整数void srand(unsigned seed) 初始化随机数发生器int rand() 产生一个随机数并返回这个数double poly(double x,int n,double c[])从参数产生一个多项式double modf(double value,double *iptr)将双精度数value分解成尾数和阶double fmod(double x,double y) 返回x/y的余数double frexp(double value,int *eptr) 将双精度数value分成尾数和阶double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数char *ecvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *fcvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *gcvt(double value,int ndigit,char *buf)将数value转换成字符串并存于buf中,并返回buf的指针char *ultoa(unsigned long value,char *string,int radix)将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *ltoa(long value,char *string,int radix)将长整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *itoa(int value,char *string,int radix)将整数value转换成字符串存入string,radix为转换时所用基数double atof(char *nptr) 将字符串nptr转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0 double strtod(char *str,char **endptr)将字符串str转换成双精度数,并返回这个数,long strtol(char *str,char **endptr,int base)将字符串str转换成长整型数,并返回这个数,int matherr(struct exception *e)用户修改数学错误返回信息函数(没有必要使用)double _matherr(_mexcep why,char *fun,double *arg1p,double *arg2p,double retval)用户修改数学错误返回信息函数(没有必要使用)unsigned int _clear87() 清除浮点状态字并返回原来的浮点状态void _fpreset() 重新初使化浮点数学程序包unsigned int _status87() 返回浮点状态字。
C语言常用库C语言是一种通用的编程语言,广泛应用于系统软件的开发和嵌入式系统的编程。
它提供了丰富的库函数,用于实现各种功能。
本文将介绍一些常用的C语言库,帮助读者深入了解和应用这些库函数。
一、stdio.h库stdio.h库是C语言中最常用的库之一,主要用于输入和输出操作。
它提供了一系列函数,例如printf()用于格式化输出,scanf()用于格式化输入,fgets()用于读取一行字符串等。
这些函数能够方便地进行输入输出操作,是C语言常用的基础函数库。
二、stdlib.h库stdlib.h库是C语言中的标准库之一,提供了一些常用的函数,用于实现内存管理、随机数生成、字符串转换等功能。
例如,malloc()用于动态分配内存,free()用于释放动态分配的内存,rand()用于生成随机数,atoi()用于字符串转整数等。
这些函数能够提高代码的灵活性和可读性,方便进行复杂的计算和运算。
三、string.h库string.h库是C语言中用于处理字符串的库,提供了一些常用的字符串操作函数。
例如,strcpy()用于复制字符串,strlen()用于获取字符串长度,strcat()用于连接字符串等。
这些函数能够方便地进行字符串处理,执行字符串的查找、替换和比较等操作。
四、math.h库math.h库是C语言中用于数学计算的库,提供了一些常用的数学函数。
例如,sqrt()用于求平方根,pow()用于计算幂次方,sin()用于计算正弦值等。
这些函数能够方便地进行数学运算,满足复杂的计算需求。
五、time.h库time.h库是C语言中用于时间和日期操作的库,提供了一些常用的时间相关函数。
例如,time()用于获取当前时间,ctime()用于将时间转换为字符串,difftime()用于计算时间差等。
这些函数能够方便地获取系统时间、进行时间的转换和计算。
六、ctype.h库ctype.h库是C语言中用于字符处理的库,提供了一些常用的字符操作函数。
一、数学函数调用数学函数时,要求在源文件中包下以下命令行:#include<math.h>函数原型说明功能返回值说明intabs(intx)求整数x的绝对值计算结果doublefabs(doublex)求双精度实数x的绝对值计算结果doubleacos(doublex)计算cos-1(x)的值计算结果x在-1~1范围内doubleasin(doublex)计算sin-1(x)的值计算结果x在-1~1范围内doubleatan(doublex)计算tan-1(x)的值计算结果doubleatan2(doublex)计算tan-1(x/y)的值计算结果doublecos(doublex)计算cos(x)的值计算结果x的单位为弧度doublecosh(doublex)计算双曲余弦cosh(x)的值计算结果doubleexp(doublex)求e x的值计算结果doublefabs(doublex)求双精度实数x的绝对值计算结果doublefloor(doublex)求不大于双精度实数x的最大整数doublefmod(doublex,doubley)求x/y整除后的双精度余数doublefrexp(doubleval,int *exp)把双精度val分解尾数和以2为底的指数n,即val=x*2n,n存放在exp所指的变量中返回位数x0.5≤x<1doublelog(doublex)求㏑x计算结果x>0 doublelog10(doublex)求log10x计算结果x>0doublemodf(doubleval,do uble*ip)把双精度val分解成整数部分和小数部分,整数部分存放在ip所指的变量中返回小数部分doublepow(doublex,doubley)计算x y的值计算结果doublesin(doublex)计算sin(x)的值计算结果x的单位为弧度doublesinh(doublex)计算x的双曲正弦函数sinh(x)的值计算结果doublesqrt(doublex)计算x的开方计算结果x≥0doubletan(doublex)计算tan(x)计算结果doubletanh(doublex)计算x的双曲正切函数tanh(x)的值计算结果二、字符函数调用字符函数时,要求在源文件中包下以下命令行:#include<ctype.h>函数原型说明功能返回值intisalnum(intch)检查ch是否为字母或数字是,返回1;否则返回0 intisalpha(intch)检查ch是否为字母是,返回1;否则返回0 intiscntrl(intch)检查ch是否为控制字符是,返回1;否则返回0 intisdigit(intch)检查ch是否为数字是,返回1;否则返回0intisgraph(intch)检查ch是否为ASCII码值在ox21到ox7e的可打印字符(即不包含空格字符)是,返回1;否则返回0intislower(intch)检查ch是否为小写字母是,返回1;否则返回0intisprint(intch)检查ch是否为包含空格符在内的可打印字符是,返回1;否则返回0intispunct(intch)检查ch是否为除了空格、字母、数字之外的可打印字符是,返回1;否则返回0intisspace(intch)检查ch是否为空格、制表或换行符是,返回1;否则返回0intisupper(intch)检查ch是否为大写字母是,返回1;否则返回0intisxdigit(intch)检查ch是否为16进制数是,返回1;否则返回0inttolower(intch)把ch中的字母转换成小写字母返回对应的小写字母inttoupper(intch)把ch中的字母转换成大写字母返回对应的大写字母三、字符串函数调用字符函数时,要求在源文件中包下以下命令行:#include<string.h>函数原型说明功能返回值char*strcat(char*s1,char*s2)把字符串s2接到s1后面s1所指地址char*strchr(char*s,intch)在s所指字符串中,找出第一次出现字符ch的位置返回找到的字符的地址,找不到返回NULLintstrcmp(char*s1,char*s2)对s1和s2所指字符串进行比较s1<s2,返回负数;s1==s2,返回0;s1>s2,返回正数char*strcpy(char*s1,char*s2)把s2指向的串复制到s1指向的空间s1?所指地址unsignedstrlen(char*s)求字符串s的长度返回串中字符(不计最后的'\0')个数char*strstr(char*s1,char*s2)在s1所指字符串中,找出字符串s2第一次出现的位置返回找到的字符串的地址,找不到返回NULL四、输入输出函数调用字符函数时,要求在源文件中包下以下命令行:#include<stdio.h>函数原型说明功能返回值voidclearer(FILE*fp)清除与文件指针fp有关的所有出错信息无intfclose(FILE*fp)关闭fp所指的文件,释放文件缓冲区出错返回非0,否则返回0intfeof(FILE*fp)检查文件是否结束遇文件结束返回非0,否则返回0intfgetc(FILE*fp)从fp所指的文件中取得下一个字符出错返回EOF,否则返回所读字符char*fgets(char*buf,intn,FILE*fp)从fp所指的文件中读取一个长度为n-1的字符串,将其存入buf所指存储区返回buf所指地址,若遇文件结束或出错返回NULLFILE*fopen(char*filename,char*mode)以mode指定的方式打开名为filename的文件成功,返回文件指针(文件信息区的起始地址),否则返回NULLintfprintf(FILE*fp,char*format,args,…)把args,…的值以format指定的格式输出到fp指定的文件中实际输出的字符数intfputc(charch,FILE*fp)把ch中字符输出到fp指定的文件中成功返回该字符,否则返回EOFintfputs(char*str,FILE*fp)把str所指字符串输出到fp所指文件成功返回非负整数,否则返回-1(EOF)intfread(char*pt,unsignedsize,unsignedn,FILE*fp)从fp所指文件中读取长度size为n个数据项存到pt所指文件读取的数据项个数intfscanf(FILE*fp,char*format,args,…)从fp所指的文件中按format指定的格式把输入数据存入到args,…所指的内存中已输入的数据个数,遇文件结束或出错返回0intfseek(FILE*fp,longoffer,intbase)移动fp所指文件的位置指针成功返回当前位置,否则返回非0longftell(FILE*fp)求出fp所指文件当前的读写位置读写位置,出错返回?-1Lintfwrite(char*pt,unsignedsize,unsignedn,FILE*fp)把pt所指向的n*size个字节输入到fp所指文件输出的数据项个数intgetc(FILE*fp)从fp所指文件中读取一个字符返回所读字符,若出错或文件结束返回EOFintgetchar(void)从标准输入设备读取下一个字符返回所读字符,若出错或文件结束返回-1char*gets(char*s)从标准设备读取一行字符串放入s所指存储区,用’\0’替换读入的换行符返回s,出错返回NULLintprintf(char*format,args,…)把args,…的值以format指定的格式输出到标准输出设备输出字符的个数intputc(intch,FILE*fp)同fputc同fputcintputchar(charch)把ch输出到标准输出设备返回输出的字符,若出错则返回EOFintputs(char*str)把str所指字符串输出到标准设备,将’返回换行符,若出\0’转成回车换行符错,返回EOFintrename(char*oldname,char*newname)把oldname所指文件名改为newname所指文件名成功返回0,出错返回-1voidrewind(FILE*fp)将文件位置指针置于文件开头无intscanf(char*format,args,…)从标准输入设备按format指定的格式把输入数据存入到args,…所指的内存中已输入的数据的个数五、动态分配函数和随机函数调用字符函数时,要求在源文件中包下以下命令行:#include<stdlib.h>函数原型说明功能返回值void*calloc(unsignedn,unsignedsize)分配n个数据项的内存空间,每个数据项的大小为size个字节分配内存单元的起始地址;如不成功,返回0void*free(void*p)释放p所指的内存区无void*malloc(unsignedsize)分配size个字节的存储空间分配内存空间的地址;如不成功,返回0void*realloc(void*p,unsignedsize)把p所指内存区的大小改为size个字节新分配内存空间的地址;如不成功,返回0intrand(void)产生0~32767的随机整数返回一个随机整数voidexit(intstate)程序终止执行,返回调用过程,state为0正常终止,非0非正常终止无。
合用标准文案C 库函数1. 数学函数头文件为 #include<math.h>也许 #include"math.h"函数名函数原型功能返回值说明absint abs(int x)求整数 x 的绝对值计算结果double acos(doubleX 应在-1 到1范围acos计算 cos -1 (x) 的值计算结果x)内X 应在-1 到1范围asindouble asin(double x)计算 sin -1 (x) 的值计算结果内atan double atan(double x) 计算 tan -1 (x) 的值计算结果double atan2(doubleAtan2计算 tan -1 (x/y) 的值计算结果x,double y)cos double cos(double x) 计算 cos(x) 的值 计算结果 X 的单位为弧度double cosh(double计算 x 的双曲余弦cosh计算结果x)函数 cosh(x) 的值exp double exp(double x) 求 e x的值 计算结果 fabsdouble fabs(double x)求 x 的绝对值计算结果该整数的double floor(double求出不大于 x 的最floor双精度实x)大整数数fmod double fmod(double 求整除 x/y 的余数 返回余数合用标准文案x,double y) double frexp(double的双精度实数把双精度数val 分解为数字局部(尾数 )x返回数字和以 2 为底的指数frexpval, int *eptr)n ,即 val=x*2局部 xn0.5 ≤x< 1log double log(double x)double log10(double log10x)Double modf(double modfval, double *iptr)double pow(double powx,double y) rand Int rand(void)n 存放在eptr指向的变量中求 log ex,即 ln x计算结果求 log10x计算结果把双精度数val 分解为整数局部和小数Val 的小数局部,把整数局部存局部到 iptr计算xy的值计算结果产生随机 -90 到32767间的随机整随机整数数sin Double sin(double x)计算sin x的值计算结果X 单位为弧度sinh double sinh(double x)计算x的双曲正弦计算结果函数 sinh(x) 的值sqrt Double sqrt(double x)计算x计算结果X 应≥0 tan Double tan(double x)计算tan(x)的值计算结果X 单位为弧度Double tanh(double计算x的双曲正切tanh计算结果x)函数 tanh(x) 的值2.字符函数和字符串函数函数名函数原型功能返回值包括文件检查 ch 是否是字母isalnu Int isalnum (int是字母或数字返(alpha) 或数字m ch);回 1 ;否那么返回 0(numeric)是,返回 1 ;不是,isalpha Int isalpha(int ch);检查 ch 可否字母那么返回 0检查 ch 可否控制字符是,返回 1 ;不是,iscntrl Int iscntrl (int ch);〔其 ASCII 码在 0 和那么返回 00x1F 之间〕检查 ch 可否为数字是,返回 1 ;不是,isdigit Int isdigit (int ch);〔0~9 〕那么返回 0检查 ch 可否可打印字符Int isgraph (int是,返回 1 ;不是,isgraph〔其 ASCII 码在 0x21 和ch);那么返回 00x7E 之间〕,不包括空格Int islower (int检查 ch 可否小写字母是,返回 1 ;不是,islowerch);〔 a~z 〕那么返回 0检查 ch 可否可打印字符,〔包括空格〕,其是,返回 1 ;不是,isprint Intisprint (int ch);ASCII 码在 0x20 和 0x7E那么返回 0之间,ispunct Int ispunct (int检查 ch 可否标点字符是,返回 1 ;不是,ch);〔不包括空格〕,即除字那么返回0母、数字和空格以外的所有可打印字符Int isspace (int检查ch可否空格符、跳是,返回1;不是,isspacech);格符〔制表符〕或换行符那么返回0Int isupper (int检查ch可否大写字母是,返回1;不是,isupperch);〔A~Z 〕那么返回0检查 ch 可否一个十六进Intisxdigit (int是,返回1;不是,isxdigit制数字字符〔即0~9 ,ch);那么返回 0或 A~F ,或 a~f 〕把字符串str2 接到 str1char *strcat(charstrcat后边,str1 最后边的’ \0 ’Str1 *str1,char *str2);被取消找出 str 指向的字符串中返回指向该地址char *strchr(charstrchr第一次出现字符ch 的位的指针,如找不*str,int ch);置到,那么返回空指针Str1 <str2 ,返回负数;char *strcmp(char比较两个字符串str1 、Str1 =str2 ,返回strcmp*str1,char *str2);str20 ;str1 > str2 ,返回正数。
/*
#include
int abs( int num );
double fabs( double arg );
long labs( long num );
函数返回num的绝对值
#include
double acos( double arg );
函数返回arg的反余弦值,arg的值应该在-1到1之间
#include
double asin( double arg );
函数返回arg的反正弦值,arg的值应该在-1到1之间
#include
double atan( double arg );
函数返回arg的反正切值
#include
double atan2( double y, double x );
函数返回y/x的反正切值,并且它可以通过x,y的符号判断
(x,y)所表示的象限,其返回的也是对应象限的角度值
#include
double ceil( double num );
double floor( double arg );
ceil函数返回不小于num的最小整数,如num = 6.04, 则返回7.0
floor函数返回不大于num的最大的数,如num = 6.04, 则返回6.0
#include
double cos( double arg );
double sin( double arg );
double tan( double arg );
函数分别返回arg的余弦,正弦,正切值,arg都是用弧度表示
#include
double cosh( double arg );
double sinh( double arg );
double tanh( double arg );
函数分别返回arg的双曲余弦,双曲正弦,双曲正切,arg都是用弧度表示的
#include
double fmod( double x, double y );
函数返回x/y的余数
#include
div_t div( int numerator, int denominator );
ldiv_t ldiv( long numerator, long denominator );
函数返回numerator/demominator操作的,返回一个结构体div_t(ldiv_t) div_t(ldiv_t)结构体中定义了quot(商),rem(余数)
#include
double exp( double arg );
函数返回e(自然底数)的arg次
#include
double log( double num );
函数返回num的自然对数值num应为大于0的数
#include
double log10( double num );
函数返回num以10为底的对数值,num也应该为大于0的数
#include
double pow( double base, double exp );
函数返回以base为底的exp次,不允许的取值范围:
当base 为0 且exp 小于或等于0
当base 为负数且exp 不为整数
#include
double sqrt( double num );
函数返回num的开方值,num应该为不小于0的值
#include
double frexp( double num, int* exp );
函数可以获取科学计数法的参数
函数返回在0.5到1.0之间的值,传入exp的参数用于返回num的指数(以2为底数计算,即:num = mantissa * (2 ^ exp))
#include
double ldexp( double num, int exp );
函数返回num*(2^exp)的值,如果结果溢出,返回HUGE_VAL
#include
double modf( double num, double *i );
函数分割num,将整数部分填入i的值,小数部分返回
*/。