前言
math库中包含常见的数学函数,例如三角函数,对数,平方根等等。
一、math库的函数应用
math库中的三角函数sin()、cos()、tan()、asin()、acos()、atan()等,函数原型为:
double sin(double angle);
double cos(double angle);
double tan(double angle);
double asin(double value);
double acos(double value);
double atan(double value);
其中sin()、cos()、tan()的参数angle为弧度表示的角度,返回角度的正弦、余弦和正切值。而asin()、acos()、atan()分别表示参数的反正弦、反余弦及反正切的值。使用的时候,要注意asin()、acos()的定义域在-1~+1之间。
除了常见的三角函数之外,math库还包含指数和对数函数,函数原型为:
double exp(double x);
double log(double x);
double log10(double x);
其中exp()函数表示返回e的x次幂,log()函数则表示返回以e为底的对数,log10()函数则返回x以10为低的对数。
math库中另外的还包括求幂的函数,其函数原型为:
double pow(double x,double y);
double sqrt(double x);
其中pow()函数计算x的y次幂,而sqrt()函数表示求x的平方根,如果x为负数,则出错。
math库中还有表示绝对值、底数以及余数等函数,具体的使用方法和上面的方法一致。
C语言中函数调用语句如何写以及放在那里是有一定难度的,一般查阅相关手册得到处理函数的名字、参数的类型、需要参数的个数等特征,然后看是否有返回值,如果没有返回值,在调用时候作为单独的语句使用就可以,例如printf()函数;如果有返回值,那么可以放在表达式中作为操作数或者直接作为另外函数的参数。
二、程序实例
代码如下
#include <stdio.h>
#include <math.h>
void main()
{
float arc;
float f,b,x;
int i;
printf("input arc ");
scanf("%f",&arc);
f=sin(arc);
printf("sin (%f)=%f.\n",arc,f);
printf("input value x and b:");
scanf("%f%f",&x,&b);
f=log(x)/log(b);
printf("log%f(%f)=%f \n",b,x,f);
f=sqrt(x);
printf("sqrt(%f) value is %f \n",x,f);
i=floor(x);
printf("floor(%f)=%d \n",x,i);
}
运行结果
结果分析
程序中的语句i=floor(x);可以求解不大于x的最大整数。
拓展应用
- C程序中使用math库的函数时,要在预处理声明,在程序的开始加上#include <math.h>的库包含命令,否则编译器就无法认识tan()、log()等函数,会提示错误。
- 使用数学函数的时候,要注意函数的参数的定义域规定的范围。
总结
以上就是今天要讲的内容,本文仅仅简单介绍了C语言中math库的部分函数的使用。