需要引用头文件math.h,才可以使用上述数学函数。
#include
int main(){
return 0;
}
绝对值就是把数字的符号去掉,fabs来实现
#include
int main(){
printf("%f\n",fabs(-5.1)); //输出结果为:5.100000
return 0;
}
取整分为向上取整和向下取整
向上取整就是找到大于等于当前数的最小整数,用ceil来实
#include
int main(){
printf("%f\n",ceil(3.5)); //输出结果为:4.000000
return 0;
}
向下取整就是找到小于等于当前数的最大整数,用floor来实
#include
int main(){
printf("%f\n",floor(3.5)); //输出结果为:3.000000
return 0;
}
次幂就是计算x的y次幂,也就是计算y个x的连乘,用pow实现
#include
int main(){
printf("%lf\n",pow(3,3)); //输出结果为:27.000000
return 0;
}
开方的本质是0.5次幂,用sqrt实现
#include
int main(){
printf("%lf\n",sqrt(16)); //输出结果为:4.000000
return 0;
}
取模就是被除数除以除数得到的余数,整数取模可以用%,浮点数也可以取模,用fmod实现
#include
int main(){
printf("%lf\n",fmod(16,3.1)); //输出结果为:0.500000
return 0;
}
如果a的x次幂等于b,那么x就是以a为底b的对数
#include
int main(){
printf("%lf\n",log2(16)); //输出结果为:4.000000
return 0;
}
#include
int main(){
printf("%lf\n",log10(1000)); //输出结果为:3.000000
return 0;
}
比如一个角度α,那么正弦函数sin(α)就是对边和斜边的比值,由于角度用的是弧度制,所以PI也就是3.1415926536,代表的是180度,而PI除上6就是30度。用sin 实现
#include
#include
int main() {
printf("%lf\n", sin(3.1415926535897 / 6)); //输出结果为:0.500000
return 0;
}
那么余弦函数cos(α)就是临边和斜边的比值,PI除上3就是60度。用cos 实现
#include
#include
int main() {
printf("%lf\n", cos(3.1415926535897 / 3)); //输出结果为:0.500000
return 0;
}
那么正切函数 tan(α)就是对边和临边的比值。PI除上4就是45度。用tan实现
#include
#include
int main() {
printf("%lf\n", tan(3.1415926536 / 4)); //输出结果为:1.000000
return 0;
}
反正弦函数 arcsin用asin实现,比较好理解的就是:调用一次sin 函数,再调用一次asin 函数,得到的还是原值
#include
#include
int main() {
printf("%lf\n", asin(sin(1))); //输出结果为:1.000000
return 0;
}
反余弦函数arccos 用acos 实现
#include
#include
int main() {
printf("%lf\n", acos(cos(1))); //输出结果为:1.000000
return 0;
}
双曲函数主要有双曲正弦 sinh、双曲余弦cosh、双曲正切 tanh。
#include
#include
int main() {
printf("%lf\n", sinh(0)); //输出结果为:0.000000
return 0;
}
#include
#include
int main() {
printf("%lf\n", cosh(0)); //输出结果为:0.000000
return 0;
}
#include
#include
int main() {
printf("%lf\n", sinh(1)/cosh(1)-tanh(1)); //输出结果为:0.000000
return 0;
}