您好,登錄后才能下訂單哦!
小編給大家分享一下怎么使用C語言求冪函數(shù)和指數(shù)函數(shù),希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
用C語言求冪函數(shù)和指數(shù)函數(shù)的方法,即pow()函數(shù)和sqrt()函數(shù):
C語言pow()函數(shù):求x的y次方(次冪)
頭文件:
#include
pow() 函數(shù)用來求 x 的 y 次冪(次方),其原型為:
double pow(double x, double y);
pow()用來計算以x 為底的 y 次方值,然后將結(jié)果返回。設(shè)返回值為 ret,則 ret = xy。
可能導(dǎo)致錯誤的情況:
如果底數(shù) x 為負(fù)數(shù)并且指數(shù) y 不是整數(shù),將會導(dǎo)致 domain error 錯誤。
如果底數(shù) x 和指數(shù) y 都是 0,可能會導(dǎo)致 domain error 錯誤,也可能沒有;這跟庫的實現(xiàn)有關(guān)。
如果底數(shù) x 是 0,指數(shù) y 是負(fù)數(shù),可能會導(dǎo)致 domain error 或 pole error 錯誤,也可能沒有;這跟庫的實現(xiàn)有關(guān)。
如果返回值 ret 太大或者太小,將會導(dǎo)致 range error 錯誤。
錯誤代碼:
如果發(fā)生 domain error 錯誤,那么全局變量 errno 將被設(shè)置為 EDOM;
如果發(fā)生 pole error 或 range error 錯誤,那么全局變量 errno 將被設(shè)置為 ERANGE。
注意,使用 GCC 編譯時請加入-lm。
【實例】請看下面的代碼。
#include #include int main () { printf ("7 ^ 3 = %f\n", pow (7.0, 3.0) ); printf ("4.73 ^ 12 = %f\n", pow (4.73, 12.0) ); printf ("32.01 ^ 1.54 = %f\n", pow (32.01, 1.54) ); return 0; }
輸出結(jié)果:
7 ^ 3 = 343.000000 4.73 ^ 12 = 125410439.217423 32.01 ^ 1.54 = 208.036691
C語言sqrt()函數(shù):求給定值的平方根
頭文件:
#include
sqrt() 用來求給定值的平方根,其原型為:
double sqrt(double x);
【參數(shù)】x 為要計算平方根的值。
如果 x < 0,將會導(dǎo)致 domain error 錯誤,并把全局變量 errno 的值為設(shè)置為 EDOM。 【返回值】返回 x 平方根。 注意,使用 GCC 編譯時請加入-lm。 【實例計算200 的平方根值。】 #include main(){ double root; root = sqrt(200); printf("answer is %f\n", root); }
輸出結(jié)果: answer is 14.142136
看完了這篇文章,相信你對“怎么使用C語言求冪函數(shù)和指數(shù)函數(shù)”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。