C語言調(diào)用函數(shù)就是先定義并聲明函數(shù),之后再根據(jù)定義函數(shù)的格式調(diào)用。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比監(jiān)利網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式監(jiān)利網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋監(jiān)利地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。
下面舉例來說明函數(shù)調(diào)用方法:
#include
int fun(int x, int y); // 函數(shù)聲明,如果函數(shù)寫在被調(diào)用處之前,可以不用聲明
void main()
{
int a=1, b=2, c;
c = fun(a, b); // 函數(shù)的調(diào)用,調(diào)用自定義函數(shù)fun,其中a,b為實際參數(shù),傳遞給被調(diào)用函數(shù)的輸入值
}
// 自定義函數(shù)fun
int fun(int x, int y) // 函數(shù)首部
{ // {}中的語言為函數(shù)體
return xy ? x : y; // 返回x和y中較大的一個數(shù)
}
C語言編譯系統(tǒng)提供了眾多的預(yù)定義庫函數(shù)和宏。用戶在編寫程序時,可以直接調(diào)用這些庫函數(shù)和宏。這里選擇了初學(xué)者常用的一些庫函數(shù),簡單介紹了各函數(shù)的用法和所在的頭文件。
1.測試函數(shù)
Isalnum
原型:int isalnum(int c)
功能:測試參數(shù)c是否為字母或數(shù)字:是則返回非零;否則返回零
頭文件:ctype.h
Isapha
原型:int isapha(int c)
功能:測試參數(shù)c是否為字母:是則返回非零;否則返回零
頭文件:ctype.h
Isascii
原型:int isascii(int c)
功能:測試參數(shù)c是否為ASCII碼(0x00~0x7F):是則返回非零;否則返回零
頭文件:ctype.h
Iscntrl
原型:int iscntrl(int c)
功能:測試參數(shù)c是否為控制字符(0x00~0x1F、0x7F):是則返回非零;否則返回零
頭文件:ctype.h
Isdigit
原型:int isdigit(int c)
功能:測試參數(shù)c是否為數(shù)字:是則返回非零;否則返回零。
頭文件:ctype.h
Isgraph
原型:int isgraph(int c)
功能:測試參數(shù)c是否為可打印字符(0x21~0x7E):是則返回非零;否則返回零
頭文件:ctype.h
Islower
原型:int islower(int c)
功能:測試參數(shù)c是否為小寫字母:是則返回非零;否則返回零
頭文件:ctype.h
Isprint
原型:int isprint(int c)
功能:測試參數(shù)c是否為可打印字符(含空格符0x20~0x7E):是則返回非零;否則返回零
頭文件:ctype.h
Ispunct
原型:int ispunct(int c)
功能:測試參數(shù)c是否為標(biāo)點符號:是則返回非零;否則返回零
頭文件:ctype.h
Isupper
原型:int isupper(inr c)
功能:測試參數(shù)c是否為大寫字母:是則返回非零;否則返回零
Isxdigit
原型:int isxdigit(int c)
功能:測試參數(shù)c是否為十六進(jìn)制數(shù):是則返回非零;否則返回零
2.數(shù)學(xué)函數(shù)
abs
原型:int abs(int i)
功能:返回整數(shù)型參數(shù)i的絕對值
頭文件:stdlib.h,math.h
acos
原型:double acos(double x)
功能:返回雙精度參數(shù)x的反余弦三角函數(shù)值
頭文件:math.h
asin
原型:double asin(double x)
功能:返回雙精度參數(shù)x的反正弦三角函數(shù)值
頭文件:math.h
atan
原型:double atan(double x)
功能:返回雙精度參數(shù)的反正切三角函數(shù)值
頭文件:math.h
atan2
原型:double atan2(double y,double x)
功能:返回雙精度參數(shù)y和x由式y(tǒng)/x所計算的反正切三角函數(shù)值
頭文件:math.h
cabs
原型:double cabs(struct complex znum)
功能:返回一個雙精度數(shù),為計算出復(fù)數(shù)znum的絕對值。Complex的結(jié)構(gòu)模式在math.h中給出定義,其定義如下:
struct complex {
double a,y
};
頭文件:stdlib.h,math.h
ceil
原型:double ceil(double x)
功能:返回不小于參數(shù)x的最小整數(shù)
頭文件:math.h
_clear87
原型:unsigned int _clear87(void)
功能:清除浮點運算器狀態(tài)字
頭文件:float.h
_control87
原型:unsigned int _control87(unsigned int newvals,unsigned int mask)
功能:取得或改變浮點運算器控制字
頭文件:float.h
cos
原型:double cos(double x)
功能:返回參數(shù)x的余弦函數(shù)值
頭文件:math.h
cosh
原型:double cosh(double x)
功能:返回參數(shù)的雙曲線余弦函數(shù)值
頭文件:math.h
ecvt
原型:char*ecvt(double value,int ndigit,int*decpt,int*sign)
功能:把雙精度數(shù)value轉(zhuǎn)換為ndigit位數(shù)字的以空格字符結(jié)束的字符串,decpt指向小數(shù)點位置,sign為符號標(biāo)志。函數(shù)返回值為指向轉(zhuǎn)換后的字符串的指針
頭文件:stdlib.h
exp
原型:double exp(double x)
功能:返回參數(shù)x的指數(shù)函數(shù)值
頭文件:math.h
fabs
原型:double fabs(double x)
功能:返回參數(shù)x的絕對值
頭文件:math.h
floor
原型:double floor(double x)
功能:返回不大于參數(shù)x的最大整數(shù)
頭文件:math.h
fmod
原型:double fmod(double x,double y)
功能:計算x/y的余數(shù)。返回值為所求的余數(shù)值
頭文件:math.h
_fprest
原型:void _fprest(void)
功能:重新初始化浮點型數(shù)數(shù)學(xué)包
頭文件:float.h
frexp
原型:double frexp(double value,int*eptr)
功能:把雙精度函數(shù)value分解成尾數(shù)和指數(shù)。函數(shù)返回尾數(shù)值,指數(shù)值存放在eptr所指的單元中
頭文件:math.h
hypot
原型:double frexp(double x,double y)
功能:返回由參數(shù)x和y所計算的直角三角形的斜邊長
頭文件:math.h
labs
原型:long labs(long n)
功能:返回長整數(shù)型參數(shù)n的絕對值
頭文件:stdlib.h
ldexp
原型:double ldexp(double value,int exp)
功能:返回value*2exp的值
頭文件:math.h
log
原型:double log(double x)
功能:返回參數(shù)x的自然對數(shù)(ln x)的值
頭文件:math.h
log10
原型:double log10(double x)
功能:返回參數(shù)x以10為底的自然對數(shù)(lg x)的值
頭文件:math.h
modf
原型:double modf(double value,double*iptr)
功能:把雙精度數(shù)value分為整數(shù)部分和小數(shù)部分。整數(shù)部分保存在iptr中,小數(shù)部分作為函數(shù)的返回值
頭文件:math.h
poly
原型 :double poly(double x,int n,double c[ ])
功能:根據(jù)參數(shù)產(chǎn)生x的一個n次多項式,其系數(shù)為 c[0],c[1],…c[n]。函數(shù)返回值為給定x的多項式的值
頭文件:math.h
pow
原型:double pow(double x,double y)
功能:返回計算xy的值
頭文件:math.h
pow10
原型:double pow10(int p)
功能:返回計算10p的值
頭文件:math.h
rand
原型:int rand(void)
功能:隨機(jī)函數(shù),返回一個范圍在0~215-1的隨機(jī)整數(shù)
頭文件:stdlib.h
sin
原型:double sin(double x)
功能:返回參數(shù)x的正弦函數(shù)值
頭文件:math.h
sinh
原型double sinh(double x)
功能:返回參數(shù)x的雙曲正弦函數(shù)值
頭文件:math.h
sqrt
原型:double sqrt
功能:返回參數(shù)x的平方根值
頭文件:math.h
srand
原型:void srand(unsigned seed)
功能:初始化隨機(jī)函數(shù)發(fā)生器
頭文件:stdlib.h
_status87
原型:unsigned int_status87()
功能:取浮點狀態(tài)
頭文件:float.h
tan
原型:dounle tan(double x)
功能:返回參數(shù)x的正切函數(shù)值
頭文件:math.h
tanh
原型:double tan(double x)
功能:返回參數(shù)x的雙曲正切函數(shù)值
頭文件:math.h
你寫的程序,函數(shù)調(diào)用前,數(shù)組元素初始化為 全 0。
函數(shù)調(diào)用時,函數(shù)內(nèi) 有循環(huán) 語句,執(zhí)行:
vals[i] = 1;
把所有元素 賦新值為 1。所以輸出 1。
----
應(yīng)修改:
void findMax(int vals[],int *m) // 返回m要用指針
{
int i;
*m = vals[0];
printf("findMax輸出結(jié)果:\n");
for (i = 0; i MAXELS; i++)
{
if (vals[i] *m) *m = vals[i];
printf("vals[%d] = %d\n", i, vals[i]);
}
printf("m = %d\n", *m);
}
函數(shù)調(diào)用:
findMax(nums, value);
函數(shù)原型聲明:
void findMax(int vals[],int *m) ;