【原型】:
double sqrt (double x);
【功能】:求给定值的平方根。
【参数】:x为待计算平方根的值。
【错误异常】:如果x<0会导致错误,出现异常。
示例:
//计算100的平方根值
#include <stdio.h>
#include <math.h>
int main()
{
double sqrtValue;
sqrtValue = sqrt(100);
printf("the square root of 100 is %f\n", sqrtValue);
return 0;
}
输出结果为:
the square root of 100 is 10.000000
【原型】:
double exp (double x);
功能:计算以e 为底的x 次方值
,即ex 值。
【参数】:e为底值,x为指数值。
示例:
//计算e的2次方值
#include <stdio.h>
#include <math.h>
int main()
{
double result;
result = exp(2);
printf(" %f\n", result);
return 0;
}
输出结果为:
7.389056
【原型】:
double pow (double x, double y);
【功能】:计算以x 为底的 y 次方值
,并返回结果值。例如,设返回值为z,则z = xy。
【参数】:x为底值,y为指数值。
【错误异常】
z
过大或过小,会导致 range error 错误。示例:
//计算x的y次幂值
#include <stdio.h>
#include <math.h>
int main()
{
//幂函数求值
printf("%f\n", pow(2.0, 2.0));
printf("%f\n", pow(2.1, 2.0));
printf("%f\n", pow(2.12, 2.12));
return 0;
}
输出结果为:
4.000000
4.410000
4.918493
【原型】:
int abs (int x); //整数
float fabs (float x); //浮点数
【功能】:求取整数/浮点数的绝对值。
【参数】:x为一个整数/浮点数。
//计算整数/浮点数的绝对值
#include <stdio.h>
#include <math.h>
int main(void)
{
int integer;
float res;
integer = abs(-2);
res = fabs(-2.2);
printf("整数绝对值为:%d\n",integer);
printf("浮点数绝对值为:%f\n", res);
return 0;
}
输出结果为:
整数绝对值为:2
浮点数绝对值为:2.200000
【原型】:double ceil (double x);
【功能】:向上取整,即求不小于某个数的最小整数。
【参数】:x为要向上取整的参数。
示例:
//将参数向上取整
#include <stdio.h>
#include <math.h>
int main()
{
printf("参数 1.1 向上取整,结果为: %.1f\n", ceil(1.1));
printf("参数 -1.1 向上取整,结果为: %.1f\n", ceil(-1.1));
printf("参数 2.9 向上取整,结果为: %.1f\n", ceil(2.9));
printf("参数 -2.9 向上取整,结果为: %.1f\n", ceil(-2.9));
return 0;
}
输出结果为:
参数 1.1 向上取整,结果为:2.0
参数 -1.1 向上取整,结果为:-1.0
参数 2.9 向上取整,结果为:3.0
参数 -2.9 向上取整,结果为:-2.0
【原型】:double floor (double x);
【功能】:向下取整,即求不大于某个数的最大整数。
【参数】:x为要向下取整的参数。
示例:
//将参数向下取整
#include <stdio.h>
#include <math.h>
int main()
{
printf("参数 1.123 向下取整,结果为: %.1f\n", floor(1.123 ));
printf("参数 -1.123 向下取整,结果为: %.1f\n", floor(-1.123 ));
printf("参数 2.987 向下取整,结果为: %.1f\n", floor(2.987 ));
printf("参数 -2.987 向下取整,结果为: %.1f\n", floor(-2.987 ));
return 0;
}
输出结果为:
参数 1.123 向下取整,结果为:1.0
参数 -1.123 向下取整,结果为:-2.0
参数 2.987 向下取整,结果为:2.0
参数 -2.987 向下取整,结果为:-3.0
【原型】double modf (double x, double* intpart);
【功能】:将浮点数分解为整数和小数两部分。
【参数】:x为双精度浮点数,而intpart为保存整数部分的指针。
【返回值】:返回的是浮点数分解后的小数部分。设返回的小数部分值decimals = x (浮点数) - intpart(整数部分)。三个参数值的正负号相同。
示例:
//将浮点型参数分解为整数及小数两部分
#include <stdio.h>
#include <math.h>
int main()
{
double x, intpart, decimals;
x = 1.23456;
decimals = modf(x, &intpart);
printf("%f = %f - %f \n", decimals, x, intpart);
return 0;
}
输出结果为:
0.234560= 1.234560-1.000000
【原型】:double hypot (double x, double y);
【功能】:求直角三角形的斜边长。
【参数】:x、y分别为直角三角形的两条直角边。
示例:
//求直角三角形斜边长
#include <stdio.h>
#include <math.h>
int main()
{
double x, y, result;
x = 3;
y = 4;
result = hypot(x, y);
printf("直角三角形直角边长分别为 %f、%f,\n其斜边长为:%f \n", x, y, result);
return 0;
}
输出结果为:
直角三角形直角边长分别为 3.000000、4.000000,
其斜边长为:5.000000
度和弧度都是衡量角的大小的单位。度用 °
来表示,弧度用 rad
表示。
度和弧度之间的转换规则为:
弧度 = (180 / π )角度
角度 = (π / 180 )弧度
1rad = (180/π)° ≈ 57.3°
1° = (π/180)rad ≈ 0.01745rad