天天看點

《C語言及程式設計》資料——C語言中數學函數

c語言的數學庫函數提供了大多數常用的數學功能。

使用下面的函數,要求程式前寫預處理指令:

以sin函數為例,說明其用法。

"double sin(double);意味着參數應該提供一個double型資料,其求值結果,也是一個double型的值。額外提示,三角函數的角,用弧度為機關

例如:求78度角的正弦值并輸出,用下面的程式段

下面是這些函數的分類清單:

1、 三角函數

double sin(double);正弦

double cos(double);餘弦

double tan(double);正切

2 、反三角函數

double asin (double); 結果介于[-pi/2,pi/2]

double acos (double); 結果介于[0,pi]

double atan (double); 反正切(主值),結果介于[-pi/2,pi/2]

double atan2 (double,double); 反正切(整圓值),結果介于[-pi,pi]

3 、雙曲三角函數

double sinh (double);

double cosh (double);

double tanh (double);

4 、指數與對數

double frexp(double value,int *exp);這是一個将value值拆分成小數部分f和(以2為底的)指數部分exp,并傳回小數部分f,即f*2^exp。其中f取值在0.5~1.0範圍或者0。

double ldexp(double x,int exp);這個函數剛好跟上面那個frexp函數功能相反,它的傳回值是x*2^exp

double modf(double value,double *iptr);拆分value值,傳回它的小數部分,iptr指向整數部分。

double log (double); 以e為底的對數

double log10 (double);以10為底的對數

double pow(double x,double y);計算x的y次幂

float powf(float x,float y); 功能與pow一緻,隻是輸入與輸出皆為浮點數

double exp (double);求取自然數e的幂

double sqrt (double);開平方

5 、取整

double ceil (double); 取上整,傳回不比x小的最小整數

double floor (double); 取下整,傳回不比x大的最大整數,即高斯函數[x]

6 、絕對值

int abs(int i); 求整型的絕對值

double fabs (double);求實型的絕對值

double cabs(struct complex znum);求複數的絕對值

7 、标準化浮點數

double frexp (double f,int *p); 标準化浮點數,f = x * 2^p,已知f求x,p (x介于[0.5,1])

double ldexp (double x,int p); 與frexp相反,已知x,p求f

8 、取整與取餘

double modf (double,double*); 将參數的整數部分通過指針回傳,傳回小數部分

double fmod (double,double); 傳回兩參數相除的餘數

9 、其他

double hypot(double x,double y);已知直角三角形兩個直角邊長度,求斜邊長度

double ldexp(double x,int exponent);計算x*(2的exponent次幂)

double poly(double x,int degree,double coeffs []);計算多項式

int matherr(struct exception *e);數學錯誤計算處理程式

繼續閱讀