函数与储存类别.ppt

函数与储存类别.ppt

ID:56559735

大小:75.50 KB

页数:30页

时间:2020-06-28

函数与储存类别.ppt_第1页
函数与储存类别.ppt_第2页
函数与储存类别.ppt_第3页
函数与储存类别.ppt_第4页
函数与储存类别.ppt_第5页
资源描述:

《函数与储存类别.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章函數與儲存類別函數函數函數為完成某一次特定任務或工作的小程式函數的類型庫存函數(libraryfunctions)如:scanf()、printf()函數…等此函數為系統所提供可以直接呼叫使用之自定函數(user-definefunctions)此函數是使用者自行定義之函數函數的其它特點它與變數一樣都有資料型態函數傳回值之資料型態必須和函數之資料型態一致函數的三個要素/*Filename:ex5-1a.c*/#include#includevoidprint_star();intmain(){print_star();

2、printf("BrightTsai");print_star();}voidprint_star(){printf("***********");}函數的語法函數的呼叫函數的定義函數的三個要素函數的語法好比說英文或法文時,需符合英文文法或法文文法一樣,因此當您在函數呼叫時,若與函數語法不符,編譯程式便在編譯時期會發出錯誤訊息函數的語法,一般寫在main()函數的上面,從此便可知此程式用到了幾個函數函數的呼叫函數的呼叫是執行函數的定義區段函數的定義此區段為函數所要完成的工作,如範例5-1a.c為印出11個’*’函數的呼叫函數的呼叫可以帶有參數參數的類型形式參數(

3、formalargument)實際參數(actualargument)參數傳遞方式傳值呼叫(callbyvalue)傳址呼叫(callbyaddress)範例ex5-1b.c傳值呼叫/*Filename:ex5-1b.c*/#include#includevoidprint_star(int);intmain(){print_star(30);printf(“Mr.BrightTsaiisattheNCTU”);print_star(30);}voidprint_star(intk){inti;for(i=1;i<=k;

4、i++)printf(“*”);print(“”);}形式參數實際參數return敘述return敘述在函數定義中,return敘述表示將此結果傳回給呼叫此函數的敘述,並將控制權交回若無return敘述,則遇到右大括號(})便結束函數定義且交回控制權給呼叫此一敘述的下一個敘述C程式中不可有巢狀函數(nestedfunction)return程式範例(一)/*Filename:ex5-2a.c*/#include#includedoubleaverage(double,double);intmain(){doublesco

5、re_1,score_2,aver;printf("Entertwodoublenumbers:");while(scanf("%lf%lf",&score_1,&score_2)==1){printf("Inputerror!!");printf("Entertwonumber:");}aver=average(score_1,score_2);printf("%.2f+%.2f/2=%.2f",score_1,score_2,aver);}doubleaverage(doublef1,doublef2){return程式範例(一)floatavera

6、ge(floatf1,floatf2){return((f1+f2)/2);}程式解說當一函數執行完有傳回值傳回呼叫函數的敘述時,必須注意此函數的資料型態必須與傳回值的資料型態一致才可如傳回值為((f1+f2)/2)是一浮點數,故average的函數資料型態也必須為浮點數return程式範例(二)/*Filename:ex5-2b.c*/#include#includevoidfunct(int,int);intmain(){inta=1000,b=2000;funct(a,b);printf(“a=%db=%d”,a,

7、b);}return程式範例(二)voidfunct(inta,intb){intc;c=a+b;printf("a+b=%d",c);returnc;}程式解說若參數使用void,如funct(void)是表示funct函數不接受任何參數遞迴函數遞迴函數(recursivefunction)在函數本身中,若有一敘述又呼叫它本身函數遞迴函數範例計算某數的階層,如:6!費氏數列設計遞迴函數時必須注意結束點計算n階層/*Filename:ex5-3a.c*/#include#includeintfact(long);intm

8、ain(){longnu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。