c標准頭文件math.h中有兩個與log有關的函數。
double __cdecl log(double _X); double __cdecl log10(double _X);
其中log相當於數學中的ln(即loge)。
log10相當於數學中的lg。
如下:
#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
#include <stdio.h>#include <math.h>int main(){printf("%.6lf\n", log10(8.0)/log10(2.0));return 0;}