#include math.h
專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)遼陽縣免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
log(x)為以2為底x的對數(shù),可以用log(x)/log(10)表示以10為底x的對數(shù) 。
C語言中直接提供的是e為底的自然對數(shù)log,和以10為底的常用對數(shù)log10,其他對數(shù)寫個(gè)函內(nèi)數(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);}
擴(kuò)展資料:
如果一個(gè)變量名后面跟著一個(gè)有數(shù)字的中括號,這個(gè)聲明就是數(shù)組聲明。字符串也是一種數(shù)組。它們以ASCII的NULL作為數(shù)組的結(jié)束。要特別注意的是,中括號內(nèi)的索引值是從0算起的。
C語言的字符串其實(shí)就是以'\0'字符結(jié)尾的char型數(shù)組,使用字符型并不需要引用庫,但是使用字符串就需要C標(biāo)準(zhǔn)庫里面的一些用于對字符串進(jìn)行操作的函數(shù)。它們不同于字符數(shù)組。使用這些函數(shù)需要引用頭文件string.h。
C程序中函數(shù)的數(shù)目實(shí)際上是不限的,如果說有什么限制的話,那就是,一個(gè)C程序中必須至少有一個(gè)函數(shù),而且其中必須有一個(gè)并且僅有一個(gè)以main為名的函數(shù),這個(gè)函數(shù)稱為主函數(shù),整個(gè)程序從這個(gè)主函數(shù)開始執(zhí)行。
比較特別的是,比特右移()運(yùn)算符可以是算術(shù)(左端補(bǔ)最高有效位)或是邏輯(左端補(bǔ) 0)位移。例如,將 11100011 右移 3 比特,算術(shù)右移后成為 11111100,邏輯右移則為 00011100。因算術(shù)比特右移較適于處理帶負(fù)號整數(shù),所以幾乎所有的編譯器都是算術(shù)比特右移。
#includestdio.h
#include math.h
void main()
{
float x=5,y;
y=log(x);
printf("%f\n",y);
}
擴(kuò)展資料:
C語言中使用對數(shù)函數(shù)的方法
log()函數(shù):返回以e為底的對數(shù)值
頭文件:
1#include
log() 函數(shù)返回以 e 為底的對數(shù)值,其原型為:
1double?log?(double?x);
log()用來計(jì)算以e為底的 x 的對數(shù)值,然后將結(jié)果返回。設(shè)返回值為 ret,則
1x = eret
如果 x 為負(fù)數(shù)或 0,則會(huì)發(fā)生錯(cuò)誤并設(shè)置 errno 值。錯(cuò)誤代碼:
EDOM:參數(shù)x 為負(fù)數(shù);
ERANGE:參數(shù)x
為零值,零的對數(shù)值無定義。
注意:使用 GCC 編譯時(shí)請加入-lm。
首先在C語言中要用到指數(shù)、對數(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ù)的對數(shù)
exponent = 100;
printf("lg(%.f) = %.2f\n", exponent, log10(exponent));//以10為底數(shù)的對數(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ù)、對數(shù)。
3、取整、絕對值。
4、標(biāo)準(zhǔn)化浮點(diǎn)數(shù)。
涉及參數(shù)類型為double類型。
參考資料:
百度百科——換底公式
百度百科——math.h