#includestdio.h
創(chuàng)新互聯(lián)建站是由多位在大型網(wǎng)絡(luò)公司、廣告設(shè)計(jì)公司的優(yōu)秀設(shè)計(jì)人員和策劃人員組成的一個(gè)具有豐富經(jīng)驗(yàn)的團(tuán)隊(duì),其中包括網(wǎng)站策劃、網(wǎng)頁美工、網(wǎng)站程序員、網(wǎng)頁設(shè)計(jì)師、平面廣告設(shè)計(jì)師、網(wǎng)絡(luò)營銷人員及形象策劃。承接:網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、網(wǎng)頁設(shè)計(jì)制作、網(wǎng)站建設(shè)與維護(hù)、網(wǎng)絡(luò)推廣、數(shù)據(jù)庫開發(fā),以高性價(jià)比制作企業(yè)網(wǎng)站、行業(yè)門戶平臺(tái)等全方位的服務(wù)。
#include math.h
void main()
{
float x=5,y;
y=log(x);
printf("%f\n",y);
}
擴(kuò)展資料:
C語言中使用對(duì)數(shù)函數(shù)的方法
log()函數(shù):返回以e為底的對(duì)數(shù)值
頭文件:
1#include
log() 函數(shù)返回以 e 為底的對(duì)數(shù)值,其原型為:
1double?log?(double?x);
log()用來計(jì)算以e為底的 x 的對(duì)數(shù)值,然后將結(jié)果返回。設(shè)返回值為 ret,則
1x = eret
如果 x 為負(fù)數(shù)或 0,則會(huì)發(fā)生錯(cuò)誤并設(shè)置 errno 值。錯(cuò)誤代碼:
EDOM:參數(shù)x 為負(fù)數(shù);
ERANGE:參數(shù)x
為零值,零的對(duì)數(shù)值無定義。
注意:使用 GCC 編譯時(shí)請(qǐng)加入-lm。
沒有問題,輸出m=0.301030;n=0.004321;g=69.66
編譯時(shí)會(huì)提示warning,主要原因有
1、int d=300000 過大,用長整形;
2、log()和log10()函數(shù)均是double型,double轉(zhuǎn)成float會(huì)有截?cái)嗾`差,將float r=0.01,m,n,g;
中的float改成double就不會(huì)有warning了;
3、getch()函數(shù)未聲明,頭文件加入#includeconio.h,就不會(huì)有warning了。
但warning不會(huì)影響運(yùn)行結(jié)果。
c 里直接提供的是 以 e 為底的自然對(duì)數(shù) log ,和 以 10 為底的常用對(duì)數(shù) log10
其他對(duì)數(shù)寫個(gè)函數(shù)就可以
#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);}
#include math.h
log(x)為以2為底x的對(duì)數(shù),可以用log(x)/log(10)表示以10為底x的對(duì)數(shù) 。
在C++/C語言中,對(duì)數(shù)函數(shù)y = lnx的表示方法為y = log(x),函數(shù)的完整原型為:double log(double x)。
#includecstdio
#includealgorithm
#includecmath
using namespace std;
int main()
{
printf("%f\n",log(10));
return 0;
} ?
擴(kuò)展資料
C語言 log10() 函數(shù)用來求以 10 為底的對(duì)數(shù)值。
頭文件:math.h
語法/原型:double log10(double x);
參數(shù) x 是一個(gè)雙精度數(shù)。
返回值:以 10 為底的 x 的對(duì)數(shù)值。
【實(shí)例】使用C語言 log10() 函數(shù)求以 10 為底的 40 的對(duì)數(shù)。
#include stdio.h
#include math.h
int main() {
double m = 40; ?//為變量賦初值
double n = log10(m); ?//求以10為底的參數(shù)40的對(duì)數(shù)
printf("%lf\n", n);
return 0;
}
運(yùn)行結(jié)果:
1.602060
首先在C語言中要用到指數(shù)、對(duì)數(shù)的相關(guān)公式,需要引入math.h。另外ln是以e為底數(shù),lg是以10為底數(shù)。
代碼如下:
#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
#includestdio.h
#includemath.h
intmain(){
printf("%f\n",log(10));//以e為底的對(duì)數(shù)函數(shù)
printf("%f\n",log10(100));//以10為底的對(duì)數(shù)函數(shù)
printf("%f\n",log(8)/log(2));//計(jì)算log2^8,運(yùn)用換底公式
printf("%f\n",exp(1));//計(jì)算自然常數(shù)e
return0;
}
擴(kuò)展資料
模擬一個(gè)log日志的寫入
#includestdio.h
#includestdarg.h
#includetime.h
intwrite_log(FILE*pFile,constchar*format,…)
{
va_listarg;
intdone;
va_start(arg,format);
time_ttime_log=time(NULL);
structtm*tm_log=localtime(time_log);
fprintf(pFile,"%04d-%02d-%02d%02d:%02d:%02d",tm_log-tm_year+1900,tm_log-tm_mon+1,tm_log-tm_mday,tm_log-tm_hour,tm_log-tm_min,tm_log-tm_sec);
done=vfprintf(pFile,format,arg);
va_end(arg);
fflush(pFile);
returndone;
}
intmain()
{
FILE*pFile=fopen(“123.txt”,“a”);
write_log(pFile,"%s%d%f\n","isrunning",10,55.55);
fclose(pFile);
return0;
}
分享標(biāo)題:c語言對(duì)數(shù)函數(shù)的表達(dá) c語言對(duì)函數(shù)的理解
文章位置:http://chinadenli.net/article28/hiegjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、外貿(mào)建站、網(wǎng)站策劃、電子商務(wù)、定制網(wǎng)站、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)