C 数学库

math.h头定义了各种数学函数和一个宏。这个库中所有可用的函数取double参数并返回double的结果。使用#include<math.h>对接下来的程序进行预处理,拷贝编译器中math库到预处理器所在位置,便可以进行除简单四则运算之外的数学运算等内容

        1.幂指数运算(power&exponent)

pow(a,b) 返回值为a的b次方--> a^b;

#include<stdio.h>
#include<math.h>
int main()
{
	double r = 0.09,p = 0;
	int n = 10;
	p = pow(1 + r, n);
	printf("%lf", p);
	return 0;
}

例为将1+r的n次方赋值到p并以小数输出; 

exp(a) 返回值为e的a次方;

#include<stdio.h>
#include<math.h>
int main()
{
	double a = exp(1),b=exp(2);
	printf("%lf %lf", a,b);
	return 0;
}

 

        2.对数运算

log(a) 返回值默认为以e为底数a的对数;

loga(b) 返回值为以a为底b的对数;

#include<stdio.h>
#include<math.h>
int main()
{
	double a = exp(1),b=exp(2);
	printf("%lf %lf\n", a,b);

	printf("%lf %lf %lf", log(1), log(b),log10(1000));
	return 0;
}

 

         3.开方运算(square root)

sqrt(x) 返回值为对x开平方根

#include<stdio.h>
#include<math.h>
int main()
{
	double a,b,c;
	a = sqrt(16), b = sqrt(4), c = sqrt(2);
	printf("%lf %lf %lf", a, b, pow(c, 2));
	return 0;
}

 

        4.绝对值(float abslute)

fabs(a)返回值为a的绝对值

#include<stdio.h>
#include<math.h>
int main()
{
	double a,b,c;
	a =0, b =fabs(-1), c = -1;
	printf("%lf %lf %lf %lf", fabs(a), b,fabs((-1)*fabs(c)),(-1)* fabs((-1) * fabs(c)));
	return 0;
}

 

        5.取整

floor(a) 返回<=a 的最大整数

cell(a) 返回>=a的最小整数

#include<stdio.h>
#include<math.h>
int main()
{
	double a,b,c,d;
	a = floor(-1.5), b = floor(1.5);
	printf("%lf %lf\n", a,b);
	c = ceil(-1.5), d = ceil(1.5);
	printf("%lf %lf", c, d);
	return 0;
}

 

        6.取余

fmod(a,b) 对浮点数a与b取余(a%b)


#include<stdio.h>
#include<math.h>
int main()
{
	double a, b, c, d;
	a = 27.08, b = 2.8;
	printf("%lf", fmod(a, b));
	return 0;
}

        7.三角函数

三角函数名(a)

注意a代表了一个以弧度表示的角度,且PI的标准值为3.14159265

1弧度=180/pai 度

利用参数val可以将输入的角度数转化为对应弧度数

#include<stdio.h>
#include<math.h>
#define PI 3.14159265
int main()
{
	double x, ret1,ret2,ret3, val;
	/*x = 45.0;*/
	scanf("%lf", &x);
	val = PI / 180;
	ret1 = sin(x * val);
	ret2 = cos(x * val);
	ret3 = tan(x * val);

	printf("%lf\n%lf\n%lf\n", ret1, ret2, ret3);
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vⅤ_Leon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值