重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
C語言中直接提供的是e為底的自然對數log,和以10為底的常用對數log10,其他對數寫個函內數就可以。
網站建設哪家好,找創新互聯公司!專注于網頁設計、網站建設、微信開發、微信小程序開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了賈汪免費建站歡迎大家使用!
#include stdio.h
#include math.h
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);}
擴展資料:
如果一個變量名后面跟著一個有數字的中括號,這個聲明就是數組聲明。字符串也是一種數組。它們以ASCII的NULL作為數組的結束。要特別注意的是,中括號內的索引值是從0算起的。
C語言的字符串其實就是以'\0'字符結尾的char型數組,使用字符型并不需要引用庫,但是使用字符串就需要C標準庫里面的一些用于對字符串進行操作的函數。它們不同于字符數組。使用這些函數需要引用頭文件string.h。
C程序中函數的數目實際上是不限的,如果說有什么限制的話,那就是,一個C程序中必須至少有一個函數,而且其中必須有一個并且僅有一個以main為名的函數,這個函數稱為主函數,整個程序從這個主函數開始執行。
比較特別的是,比特右移()運算符可以是算術(左端補最高有效位)或是邏輯(左端補 0)位移。例如,將 11100011 右移 3 比特,算術右移后成為 11111100,邏輯右移則為 00011100。因算術比特右移較適于處理帶負號整數,所以幾乎所有的編譯器都是算術比特右移。
首先在C語言中要用到指數、對數的相關公式,需要引入math.h。另外ln是以e為底數,lg是以10為底數。
代碼如下:
#includestdio.h
#includemath.h
void main()
{
double exponent, base;
exponent = 3.14;
printf("ln(%f) = %.2f\n", exponent, log(exponent));//以e為底數的對數
exponent = 100;
printf("lg(%.f) = %.2f\n", exponent, log10(exponent));//以10為底數的對數
base = 5, exponent = 100;
printf("log_%.f(%.f) = %.2f\n", base, exponent, log(exponent)/log(base));//換底公式
return 0;
}
在求log_5(100)時需要用到“換底公式”:log_5(100) = ln(100)/ln(5)。
擴展資料:
math.h文件中包含的函數主要分為以下幾類:
1、三角函數、反三角函數、雙曲三角函數。
2、指數、對數。
3、取整、絕對值。
4、標準化浮點數。
涉及參數類型為double類型。
參考資料:
百度百科——換底公式
百度百科——math.h
在C++/C語言中,對數函數y = lnx的表示方法為y = log(x),函數的完整原型為:double log(double x)。
#includecstdio
#includealgorithm
#includecmath
using namespace std;
int main()
{
printf("%f\n",log(10));
return 0;
} ?
擴展資料
C語言 log10() 函數用來求以 10 為底的對數值。
頭文件:math.h
語法/原型:double log10(double x);
參數 x 是一個雙精度數。
返回值:以 10 為底的 x 的對數值。
【實例】使用C語言 log10() 函數求以 10 為底的 40 的對數。
#include stdio.h
#include math.h
int main() {
double m = 40; ?//為變量賦初值
double n = log10(m); ?//求以10為底的參數40的對數
printf("%lf\n", n);
return 0;
}
運行結果:
1.602060