重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
1、C語言中,有兩個log函數,分別為log10和log函數,具體用法如下:
網站建設哪家好,找創新互聯!專注于網頁設計、網站建設、微信開發、小程序定制開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了云龍免費建站歡迎大家使用!
2、函數名: log10
功 能: 對數函數log,以10為底
用 法: double log10(double x);
程序示例:
#include math.h
#include stdio.hint main(void)
{
double result;
double x = 800.6872;
result = log10(x);
printf("The common log of %lf is %lf\n", x, result);
return 0;
}
3、函數名: log
功 能: 對數函數log,以e(2.71828)為底
用 法: double log(double x);
程序示例:
#include math.h
#include stdio.hint main(void)
{
double result;
double x = 800.6872;
result = log(x);
printf("The common log of %lf is %lf\n", x, result);
return 0;
}
一、前提條件:
1、兩個文件必須編入同一個可執行文件;
2、被調用函數必須是全局函數,即不能是static函數。如果有static修飾,那么必須寫在頭文件中,并被另一個文件引用。
二、聲明:
1、可以聲明在頭文件中,并在調用文件中引用該頭文件;
2、可以直接在調用文件聲明,形式為
extern RET_TYPE FUNC_NAME(PARAM_LIST);
其中extern非必須,但一般都會寫上,表示這個是其它文件定義的。
三、調用:
聲明后,直接調用即可,和本文件函數調用方式并無區別。
注意事項:在部分C編譯器中,對于函數聲明檢查并不嚴格,不聲明直接調用也只是報警告,不會影響調用結果。 但推薦使用聲明,可以減少出錯概率。
#include stdio.h#include math.h
void main()
{
double i = 2, j =4;
printf("log2,4 = %f\n",log(j)/log(i));
}
//log函數是以e為底的,還有一個log10以10為底,可以利用logi,j=loge,j/loge,i來算。
#includestdio.h
#include math.h
void main()
{
float x=5,y;
y=log(x);
printf("%f\n",y);
}
擴展資料:
C語言中使用對數函數的方法
log()函數:返回以e為底的對數值
頭文件:
1#include
log() 函數返回以 e 為底的對數值,其原型為:
1double?log?(double?x);
log()用來計算以e為底的 x 的對數值,然后將結果返回。設返回值為 ret,則
1x = eret
如果 x 為負數或 0,則會發生錯誤并設置 errno 值。錯誤代碼:
EDOM:參數x 為負數;
ERANGE:參數x
為零值,零的對數值無定義。
注意:使用 GCC 編譯時請加入-lm。
C語言中沒有以a為底b為真數的對數函數;只有以常用對數10為底的對數或自然對數e為底的對數(即Ig、In),此時就要用到換底公式來換成以e或者10為底的對數來表示出以a為底b為真數的對數表達式,從而來處理某些實際問題。
我幫你查函數表了,double就已經足夠了,我們換底為10,調用函數double
result=log10(x),然后注意除法,小心分母的數據類型,必須為double,否則很有可能出錯,這就是我的建議祝你好運~編程愉快~~
x的自然對數用log(x)表示
常用對數用log10(x)表示
#includestdio.h
#includemath.h
int main()
{int i;
for(i=1;i=10;i++)
printf("log10(%d)=%lf\n",i,log10(i));
return 0;
}