C C 數學庫函式

2022-09-06 22:48:19 字數 4173 閱讀 8500

所在函式庫為math.h、stdlib.h、string.h、float.h

1. 絕對值

int    abs(int i)                                    返回整型引數i的絕對值

double cabs(struct complex znum)       返回複數znum的絕對值

double fabs(double x)                         返回雙精度引數x的絕對值

long   labs(long n)                              返回長整型引數n的絕對值

2. 指數與對數

double exp(double x)                         返回指數函式ex的值

double log(double x)                          返回logex的值

double log10(double x)                      返回log10x的值

double pow(double x,double y)           返回xy的值

double pow10(int p)                          返回10p的值

double sqrt(double x)                        返回+√x的值

3. 反三角函式

double acos(double x)                       返回x的反余弦cos-1(x)值,x為弧度

double asin(double x)                        返回x的反正弦sin-1(x)值,x為弧度

double atan(double x)                       返回x的反正切tan-1(x)值,x為弧度

double atan2(double y,double x)        返回y/x的反正切tan-1(x)值,y的x為弧度

4. 三角函式

double cos(double x)                       返回x的余弦cos(x)值,x為弧度

double sin(double x)                        返回x的正弦sin(x)值,x為弧度

double tan(double x)                       返回x的正切tan(x)值,x為弧度

5. 雙曲三角函式

double cosh(double x)                      返回x的雙曲余弦cosh(x)值,x為弧度

double sinh(double x)                       返回x的雙曲正弦sinh(x)值,x為弧度

double tanh(double x)                      返回x的雙曲正切tanh(x)值,x為弧度

double hypot(double x,double y)        返回直角三角形斜邊的長度(z),x和y為直角邊的長度,z2=x2+y2

6. 取整

double ceil(double x)                         返回不小於x的最小整數

double floor(double x)                       返回不大於x的最大整數

7. 標準化浮點數

double frexp(double value,int *eptr)   返回value=x*2n中x的值,n存貯在eptr中

double ldexp(double value,int exp);    返回value*2exp的值

8. 隨機數

void   srand(unsigned seed)               初始化隨機數發生器

int    rand()                                      產生乙個隨機數並返回這個數

double poly(double x,int n,double c) 從引數產生乙個多項式

9. 取整與取餘

double modf(double value,double *iptr) 將雙精度數value分解成尾數和階

double fmod(double x,double y)           返回x/y的餘數,即兩引數相除的餘數

double frexp(double value,int *eptr)     將雙精度數value分成尾數和階

10. 字元數字轉換

double atof(char *nptr)                將字串nptr轉換成浮點數並返回這個浮點數

double atoi(char *nptr)                將字串nptr轉換成整數並返回這個整數

double atol(char *nptr)                將字串nptr轉換成長整數並返回這個整數

char   *ecvt(double value,int ndigit,

int *decpt,int *sign)       將浮點數value轉換成字串並返回該字串

char   *fcvt(double value,int ndigit,

int *decpt,int *sign)       將浮點數value轉換成字串並返回該字串

char   *gcvt(double value,int ndigit,

char *buf)                     將數value轉換成字串並存於buf中,並返回buf的指標

char   *ultoa(unsigned long value,

char *string,int radix)      將無符號整型數value轉換成字串並返回該字串,radix為轉換時所用基數

char   *ltoa(long value,char *string,

int radix)                       將長整型數value轉換成字串並返回該字串,radix為轉換時所用基數

char   *itoa(int value,char *string,

int radix)                       將整數value轉換成字串存入string,radix為轉換時所用基數

double atof(char *nptr)                將字串nptr轉換成雙精度數,並返回這個數,錯誤返回0

int    atoi(char *nptr)                   將字串nptr轉換成整型數, 並返回這個數,錯誤返回0

long   atol(char *nptr)                  將字串nptr轉換成長整型數,並返回這個數,錯誤返回0

double strtod(char *str,char **endptr) 將字串str轉換成雙精度數,並返回這個數,

long   strtol(char *str,char **endptr,

int base)                       將字串str轉換成長整型數,並返回這個數,

11. 函式庫控制

int     matherr(struct exception *e)   使用者修改數學錯誤返回資訊函式(沒有必要使用)

double _matherr(_mexcep why,char *fun,

double *arg1p,

double *arg2p,

double retval)               使用者修改數學錯誤返回資訊函式(沒有必要使用)

unsigned int _clear87()                 清除浮點狀態字並返回原來的浮點狀態

void         _fpreset()                     重新初使化浮點數學程式包

unsigned int _status87()               返回浮點狀態字 

數學庫函式

blas和lapack是專門為線性代數開發的工具庫。blas英文全稱basic linear algebra subprograms,共有三個層次的計算 向量與向量之間的計算,比如向量的加,減,點乘 向量與矩陣之間的計算,比如乘法運算,一階矩陣和二階矩陣的更新 矩陣與矩陣之間的計算,比如矩陣相乘,k...

6 9數學庫函式

1 真正的數 算的函式定義在 usr include x86 linux gnu bits mathcalls.h 2 使用數學庫函式的時候,只需要包含math.h即可。1 庫函式 double sqrt double x undefined reference to sqrt collect2 e...

Linux庫函式學習

一 檔案io類 1 open close read write基礎開關檔案 讀寫操作。2 lseek函式 在指定的檔案描述符中將檔案指標定位到相應的位置。3 fcntl函式 檔案加鎖 解鎖。4 select poll函式 實現多路io復用。5 fget 從指定的流中讀取資料。二 程序控制類 1 fo...