c语言中ln,lg,log的表示。

c标准头文件math.h中有两个与log有关的函数声明。

  double __cdecl log(double _X);
  double __cdecl log10(double _X); 

其中log代表ln(即loge)。
log10顾名思义就是lg。
loge和log10可以直接表示了。
如下:

#include <math.h>
#include <stdio.h>
const double e = exp(1.0);;//可以用这个方法获得比较精确的e值。
//exp()也是math.h中的函数,其功能是求e的幂
int main()
{
	printf("%.6lf\n", log10(10.0));
	printf("%.6lf\n", log(e));
	return 0;
}

输出:

1.000000
1.000000

如果想表示logab的对数,可以用换底公式。
在这里插入图片描述
把logab换成以10或e为底的对数就好了。
例如:表示log28如下:
log28=lg8/lg2

#include <stdio.h>
#include <math.h>
int main()
{
	printf("%.6lf\n", log10(8.0)/log10(2.0));
	return 0;
}

输出:

3.000000
posted @ 2022-04-19 18:17  enbug  阅读(886)  评论(0)    收藏  举报