C語言不是數(shù)學(xué),這里在運算的時候會讀值,你設(shè)變量,是讀不到值得,那么分母就有問題,你這很明顯不了解編程,編程不可能把你數(shù)學(xué)表達(dá)式錄進(jìn)來就可以的,你這除法要自己寫算法
光山網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。成都創(chuàng)新互聯(lián)于2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
首先在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)時需要用到“換底公式”:log_5(100) = ln(100)/ln(5)。
擴(kuò)展資料:
math.h文件中包含的函數(shù)主要分為以下幾類:
1、三角函數(shù)、反三角函數(shù)、雙曲三角函數(shù)。
2、指數(shù)、對數(shù)。
3、取整、絕對值。
4、標(biāo)準(zhǔn)化浮點數(shù)。
涉及參數(shù)類型為double類型。
參考資料:
百度百科——換底公式
百度百科——math.h
double log(double x),函數(shù)返回x的自然對數(shù),即lnx,
double log10(double x),函數(shù)返回x的以10為底的對數(shù).
調(diào)用前先申明包含的庫函數(shù),ln所在math.h中,程序已寫好如下:
#?include?stdio.h
#?include?math.h
int?main(void)
{
double?a;
float?x;
printf("請輸入一個待求自然對數(shù)值的小數(shù)");
scanf("%f",x);
a=log(x);
printf("ln%f=%f\n",x,?a);
return?0;
}
1 使用math.h中的log函數(shù),其相當(dāng)于ln
2 示例:求ln(2)的值
#includestdio.h
#includemath.h
int?main(){
double?n?=?2;
double?result?=?log(n);
printf("%lf",?result);
getchar();
return?0;
}
3 運行結(jié)果
這與卡西歐計算器里的值是一致的