首先在C語(yǔ)言中要用到指數(shù)、對(duì)數(shù)的相關(guān)公式,需要引入math.h。另外ln是以e為底數(shù),lg是以10為底數(shù)。
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、靈川ssl等。為上千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的靈川網(wǎng)站制作公司
代碼如下:
#includestdio.h
#includemath.h
void main()
{
double exponent, base;
exponent = 3.14;
printf("ln(%f) = %.2f\n", exponent, log(exponent));//以e為底數(shù)的對(duì)數(shù)
exponent = 100;
printf("lg(%.f) = %.2f\n", exponent, log10(exponent));//以10為底數(shù)的對(duì)數(shù)
base = 5, exponent = 100;
printf("log_%.f(%.f) = %.2f\n", base, exponent, log(exponent)/log(base));//換底公式
return 0;
}
在求log_5(100)時(shí)需要用到“換底公式”:log_5(100) = ln(100)/ln(5)。
擴(kuò)展資料:
math.h文件中包含的函數(shù)主要分為以下幾類:
1、三角函數(shù)、反三角函數(shù)、雙曲三角函數(shù)。
2、指數(shù)、對(duì)數(shù)。
3、取整、絕對(duì)值。
4、標(biāo)準(zhǔn)化浮點(diǎn)數(shù)。
涉及參數(shù)類型為double類型。
參考資料:
百度百科——換底公式
百度百科——math.h
一、前提條件:
1、兩個(gè)文件必須編入同一個(gè)可執(zhí)行文件;
2、被調(diào)用函數(shù)必須是全局函數(shù),即不能是static函數(shù)。如果有static修飾,那么必須寫在頭文件中,并被另一個(gè)文件引用。
二、聲明:
1、可以聲明在頭文件中,并在調(diào)用文件中引用該頭文件;
2、可以直接在調(diào)用文件聲明,形式為
extern RET_TYPE FUNC_NAME(PARAM_LIST);
其中extern非必須,但一般都會(huì)寫上,表示這個(gè)是其它文件定義的。
三、調(diào)用:
聲明后,直接調(diào)用即可,和本文件函數(shù)調(diào)用方式并無(wú)區(qū)別。
注意事項(xiàng):在部分C編譯器中,對(duì)于函數(shù)聲明檢查并不嚴(yán)格,不聲明直接調(diào)用也只是報(bào)警告,不會(huì)影響調(diào)用結(jié)果。 但推薦使用聲明,可以減少出錯(cuò)概率。
1、C語(yǔ)言中,有兩個(gè)log函數(shù),分別為log10和log函數(shù),具體用法如下:
2、函數(shù)名: log10
功 能: 對(duì)數(shù)函數(shù)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、函數(shù)名: log
功 能: 對(duì)數(shù)函數(shù)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;
}
x的自然對(duì)數(shù)用log(x)表示
常用對(duì)數(shù)用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;
}
C語(yǔ)言中沒(méi)有以a為底b為真數(shù)的對(duì)數(shù)函數(shù);只有以常用對(duì)數(shù)10為底的對(duì)數(shù)或自然對(duì)數(shù)e為底的對(duì)數(shù)(即Ig、In),此時(shí)就要用到換底公式來(lái)?yè)Q成以e或者10為底的對(duì)數(shù)來(lái)表示出以a為底b為真數(shù)的對(duì)數(shù)表達(dá)式,從而來(lái)處理某些實(shí)際問(wèn)題。
我?guī)湍悴楹瘮?shù)表了,double就已經(jīng)足夠了,我們換底為10,調(diào)用函數(shù)double
result=log10(x),然后注意除法,小心分母的數(shù)據(jù)類型,必須為double,否則很有可能出錯(cuò),這就是我的建議祝你好運(yùn)~編程愉快~~
#include stdio.h#include math.h
void main()
{
double i = 2, j =4;
printf("log2,4 = %f\n",log(j)/log(i));
}
//log函數(shù)是以e為底的,還有一個(gè)log10以10為底,可以利用logi,j=loge,j/loge,i來(lái)算。
網(wǎng)頁(yè)題目:log函數(shù)引用c語(yǔ)言 log函數(shù)用c語(yǔ)言怎么使用
URL鏈接:http://chinadenli.net/article22/dodcocc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、網(wǎng)站設(shè)計(jì)、軟件開(kāi)發(fā)、、定制開(kāi)發(fā)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)