函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè) C 程序都至少有一個(gè)函數(shù),即主函數(shù) main() ,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù)。
創(chuàng)新互聯(lián)專注于羅城企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站建設(shè)。羅城網(wǎng)站建設(shè)公司,為羅城等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
您可以把代碼劃分到不同的函數(shù)中。如何劃分代碼到不同的函數(shù)中是由您來(lái)決定的,但在邏輯上,劃分通常是根據(jù)每個(gè)函數(shù)執(zhí)行一個(gè)特定的任務(wù)來(lái)進(jìn)行的。
C 標(biāo)準(zhǔn)庫(kù)提供了大量的程序可以調(diào)用的內(nèi)置函數(shù)。例如,函數(shù) strcat() 用來(lái)連接兩個(gè)字符串,函數(shù) memcpy() 用來(lái)復(fù)制內(nèi)存到另一個(gè)位置。
函數(shù)還有很多叫法,比如方法、子例程或程序,等等。
C 語(yǔ)言中的函數(shù)定義的一般形式如下:
在 C 語(yǔ)言中,函數(shù)由一個(gè)函數(shù)頭和一個(gè)函數(shù)主體組成。下面列出一個(gè)函數(shù)的所有組成部分:
以下是 max() 函數(shù)的源代碼。該函數(shù)有兩個(gè)參數(shù) num1 和 num2,會(huì)返回這兩個(gè)數(shù)中較大的那個(gè)數(shù):
創(chuàng)建 C 函數(shù)時(shí),會(huì)定義函數(shù)做什么,然后通過調(diào)用函數(shù)來(lái)完成已定義的任務(wù)。
當(dāng)程序調(diào)用函數(shù)時(shí),程序控制權(quán)會(huì)轉(zhuǎn)移給被調(diào)用的函數(shù)。被調(diào)用的函數(shù)執(zhí)行已定義的任務(wù),當(dāng)函數(shù)的返回語(yǔ)句被執(zhí)行時(shí),或到達(dá)函數(shù)的結(jié)束括號(hào)時(shí),會(huì)把程序控制權(quán)交還給主程序。
調(diào)用函數(shù)時(shí),傳遞所需參數(shù),如果函數(shù)返回一個(gè)值,則可以存儲(chǔ)返回值。例如:
如上把 max() 函數(shù)和 main() 函數(shù)放一塊,編譯源代碼。當(dāng)運(yùn)行最后的可執(zhí)行文件時(shí),會(huì)產(chǎn)生下列結(jié)果:
形式參數(shù)就像函數(shù)內(nèi)的其他局部變量,在進(jìn)入函數(shù)時(shí)被創(chuàng)建,退出函數(shù)時(shí)被銷毀。
當(dāng)調(diào)用函數(shù)時(shí),有兩種向函數(shù)傳遞參數(shù)的方式:
默認(rèn)情況下,C 使用 傳值調(diào)用 來(lái)傳遞參數(shù)。一般來(lái)說(shuō),這意味著函數(shù)內(nèi)的代碼不能改變用于調(diào)用函數(shù)的實(shí)際參數(shù)。
在開始加上#include math.h;
程序中就可以調(diào)用pow(x,y)。
main()
{
double z;
z=pow(10,5);
printf("%lf/n",z);
}
輸出結(jié)果:
285.000000
擴(kuò)展資料
c語(yǔ)言求自然對(duì)數(shù)的底e的指數(shù),可以使用函數(shù)exp().
exp()的頭文件:#include
exp()的函數(shù)原型:double exp(double x);
exp()函數(shù)的作用:返回e的x次方。
exp()的相關(guān)函數(shù):float expf(float x);
long double expl(long double x);
注:自然對(duì)數(shù)的底e叫做: 歐拉數(shù)(eula's number)
如何在C語(yǔ)言中解決正弦或余弦函數(shù)的表示方法我是一個(gè)?頭文件包含。math.h
cos :余弦函數(shù)
函數(shù)原型:double cos(double x);
頭文件:#includemath.h
是否是標(biāo)準(zhǔn)函數(shù):是
函數(shù)功能:求x的余弦值,這里,x為弧度。
返回值:計(jì)算結(jié)果的雙精度值。
例程如下: 求cosx。
#include stdio.h
#include math.h
int main(void)
{
double result;
double x = M_PI。
1、打開C-Free,按ctrl+N創(chuàng)建一個(gè)新的文件。
2、然后開始調(diào)用函數(shù)。
3、按F9進(jìn)行調(diào)試后發(fā)現(xiàn)沒有錯(cuò)誤。
4、按F5執(zhí)行程序。
5、輸入想要輸入的數(shù)字。
6、按ENTER鍵輸出結(jié)果,檢驗(yàn)符合結(jié)果,說(shuō)明函數(shù)調(diào)用成功。
沒有問題,輸出m=0.301030;n=0.004321;g=69.66
編譯時(shí)會(huì)提示warning,主要原因有
1、int d=300000 過大,用長(zhǎng)整形;
2、log()和log10()函數(shù)均是double型,double轉(zhuǎn)成float會(huì)有截?cái)嗾`差,將float r=0.01,m,n,g;
中的float改成double就不會(huì)有warning了;
3、getch()函數(shù)未聲明,頭文件加入#includeconio.h,就不會(huì)有warning了。
但warning不會(huì)影響運(yùn)行結(jié)果。
c 里直接提供的是 以 e 為底的自然對(duì)數(shù) log ,和 以 10 為底的常用對(duì)數(shù) log10
其他對(duì)數(shù)寫個(gè)函數(shù)就可以
#include stdio.h
#include math.h
double loga(double n, double base);
int main (void)
{
double a, b, c;
a = log(exp(1));
b = log10(10);
c = loga(100, 5);
printf("%lf %lf %lf", a, b, c);
}
double loga(double n, double base)
{ return log(n) / log(base);}
C語(yǔ)言的三角函數(shù)庫(kù)采用的單位都是弧度,如果要使用角度,就必須轉(zhuǎn)換,從角度轉(zhuǎn)換成弧度,或者是重寫一個(gè)三角函數(shù)庫(kù)。
方法一,在調(diào)用三角函數(shù)之前先把角度換算成弧度,調(diào)用反三角函數(shù)之后把弧度換算成角度就可以了。可以用 pi = 4.0 * atan(1) 算出pi,用 a = d /180.0*pi 轉(zhuǎn)換角度到弧度。
例如: sin(45 /180.0*pi); 就是計(jì)算的sin45。
方法二,直接覆寫三角函數(shù)。
例如sin函數(shù):
double dsin(double d){
return sin(45 /180.0*pi); //原理和方法一樣,調(diào)用的時(shí)候直接使用dsin(45)即可
}