c语言中的log,ln,lg怎么编写

问题描述:

c语言中的log,ln,lg怎么编写
假设log中底数是5.另一个假设是100.就写成log5(100).
但是ln100,和lg100要怎么编写?
PS:ln是不是以e为底数?lg的底数是不是10?

c 里直接提供的是 以 e 为底的自然对数 log ,和 以 10 为底的常用对数 log10
其他对数写个函数就可以
#include
#include
double loga(double n,double base);
int main (void)
{
double a,b,c;
a = log(exp(1));
b = log10(10);
c = loga(100,5);
printf("%lf %lf %lf",a,b,c);
}
double loga(double n,double base)
{
return log(n) / log(base);
}