C語(yǔ)言的發(fā)展頗為有趣,它的原型ALGOL 60語(yǔ)言。那么大家知道C語(yǔ)言函數(shù)是什么嗎?下面一起來(lái)看看!
十多年的蕭縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整蕭縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“蕭縣網(wǎng)站設(shè)計(jì)”,“蕭縣網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
函數(shù)(Function)是一段可以重復(fù)使用的代碼,這是從整體上對(duì)函數(shù)的認(rèn)識(shí)。
C語(yǔ)言本身帶了很多庫(kù)函數(shù),并分門別類地放在了不同的頭文件中,使用時(shí)只要引入對(duì)應(yīng)的頭文件即可。
除了C語(yǔ)言自帶的.函數(shù),我們也可以編寫自己的函數(shù),稱為自定義函數(shù)(User-Defined Function)。自定義函數(shù)和庫(kù)函數(shù)沒有本質(zhì)的區(qū)別,表現(xiàn)形式和使用方法一樣,只是開發(fā)者不同而已。
這一章我們就來(lái)講解如何編寫和使用自己的函數(shù)。
參數(shù)
函數(shù)的一個(gè)明顯特征就是使用時(shí)帶括號(hào)( ),必要的話,括號(hào)中還要包含數(shù)據(jù)或變量,稱為參數(shù)(Parameter)。參數(shù)是函數(shù)需要處理的數(shù)據(jù),例如:
strlen(str1)用來(lái)計(jì)算字符串的長(zhǎng)度,str1就是參數(shù)。
puts("C語(yǔ)言中文網(wǎng)")用來(lái)輸出字符串,"C語(yǔ)言中文網(wǎng)"就是參數(shù)。
返回值
既然函數(shù)可以處理數(shù)據(jù),那就有必要將處理結(jié)果告訴我們,所以很多函數(shù)都有返回值(Return Value)。所謂返回值,就是函數(shù)的執(zhí)行結(jié)果。例如:
char str1[] = "C Language";
int len = strlen(str1);
strlen() 的處理結(jié)果是字符串 str1 的長(zhǎng)度,是一個(gè)整數(shù),我們通過 len 變量來(lái)接收。
函數(shù)返回值有固定的數(shù)據(jù)類型(int、char、float等),用來(lái)接收返回值的變量類型要一致。
許多程序設(shè)計(jì)語(yǔ)言中,可以將一段經(jīng)常需要使用的代碼封裝起來(lái),在需要使用時(shí)可以直接調(diào)用,這就是程序中的函數(shù)。如C語(yǔ)言中:int max(int x,int y){return(xy?x:y;);}就是一段比較兩數(shù)大小的函數(shù),函數(shù)有參數(shù)與返回值。C++程序設(shè)計(jì)中的函數(shù)可以分為兩類:帶參數(shù)的函數(shù)和不帶參數(shù)的函數(shù)。這兩種參數(shù)的聲明、定義也不一樣。 帶有(一個(gè))參數(shù)的函數(shù)的聲明:類型名標(biāo)示符+函數(shù)名+(類型標(biāo)示符+參數(shù)){}不帶參數(shù)的函數(shù)的聲明:void+函數(shù)名( ){
}花括號(hào)內(nèi)為函數(shù)體。帶參數(shù)的函數(shù)有返回值,不帶參數(shù)的沒有返回值。 C++中函數(shù)的調(diào)用:函數(shù)必須聲明后才可以被調(diào)用。調(diào)用格式為:函數(shù)名(實(shí)參)調(diào)用時(shí)函數(shù)名后的小括號(hào)中的實(shí)參必須和聲明函數(shù)時(shí)的函數(shù)括號(hào)中的形參個(gè)數(shù)相同。有返回值的函數(shù)可以進(jìn)行計(jì)算,也可以做為右值進(jìn)行賦值。 C語(yǔ)言中的部分函數(shù):main(主函數(shù))max(求最大數(shù)的函數(shù))scanf(輸入函數(shù))printf(輸出函數(shù))
C還沒有影子的時(shí)候,高級(jí)語(yǔ)言BASIC就有GOSUB調(diào)用子程序語(yǔ)句,這實(shí)際上就是調(diào)用一個(gè)比較完整的功能模塊,而C語(yǔ)言的函數(shù)一詞正是從function(功能,函數(shù))翻譯過來(lái)的;高級(jí)語(yǔ)言還連影子都沒有的時(shí)候,匯編語(yǔ)言就有一系列跳轉(zhuǎn)和返回指令,就已經(jīng)具備了跳出主程序流程完成某種功能后返回主流程繼續(xù)執(zhí)行的操作。所以在下認(rèn)為函數(shù)調(diào)用操作并不是C的發(fā)明創(chuàng)造,在C的研發(fā)一開始,這種思想已經(jīng)很成熟了(在CPU的研發(fā)指令安排中已經(jīng)具備了這種思想),只是C把程序結(jié)構(gòu)完全函數(shù)化了。再說(shuō),C的初衷是替代匯編語(yǔ)言的,匯編語(yǔ)言已經(jīng)具備了這種思想,C沒有這種功能就很難達(dá)到初衷了。后來(lái)互相影響,一些高級(jí)語(yǔ)言也都模塊化升級(jí),像BASIC的子程序調(diào)用已經(jīng)與C的不差上下了。個(gè)人管見,只供參考。
C語(yǔ)言中的函數(shù)的作用是可以將一段經(jīng)常需要使用的代碼封裝起來(lái),在需要使用時(shí)可以直接調(diào)用。
示例:
語(yǔ)言的函數(shù)定義和函數(shù)聲明
#includestdio.h
//使用函數(shù)前,需要在main函數(shù)前對(duì)使用的函數(shù)進(jìn)行聲明
int getMax(int, int);
void main() {
int t=getMax(12, 21);
printf("%d\n", t);
getchar();
}
int getMax(int a, int b) {
if (a b) {
return a;
}
else {
return b;
}
}
擴(kuò)展資料
scanf 函數(shù)
函數(shù)原型:int scanf(char *format [,argument,...])
功能:從標(biāo)準(zhǔn)輸入設(shè)備(一般指鍵盤)實(shí)現(xiàn)格式化輸入
返回值:成功返回讀入的數(shù)據(jù)項(xiàng)個(gè)數(shù)
函數(shù)參數(shù):format 格式化字符串
argument 輸入數(shù)據(jù)項(xiàng)的地址列表
常用格式類型參考printf函數(shù)的個(gè)格式類型
用法舉例:
從標(biāo)準(zhǔn)輸入設(shè)備中輸入一個(gè)整數(shù)到整形變量a中,輸入一個(gè)浮點(diǎn)數(shù)到浮點(diǎn)型變量b中
int a=0;
float b=0;
scanf("%d%f",a,b);
上面程序執(zhí)行后,從鍵盤輸入: 19 18.6 ,程序?qū)?19賦值給變量a, 18.6賦值給變量b 。
本文標(biāo)題:c語(yǔ)言函數(shù)思想,C語(yǔ)言基本函數(shù)
網(wǎng)站鏈接:http://jinyejixie.com/article34/hseose.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站營(yíng)銷、ChatGPT、營(yíng)銷型網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)