函數(shù)函數(shù)與運算符重載PPT學習教案_第1頁
函數(shù)函數(shù)與運算符重載PPT學習教案_第2頁
函數(shù)函數(shù)與運算符重載PPT學習教案_第3頁
函數(shù)函數(shù)與運算符重載PPT學習教案_第4頁
函數(shù)函數(shù)與運算符重載PPT學習教案_第5頁
已閱讀5頁,還剩252頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、會計學1函數(shù)函數(shù)與運算符重載函數(shù)函數(shù)與運算符重載函數(shù)的說明與使用函數(shù)的說明與使用1函數(shù)的嵌套與遞歸函數(shù)的嵌套與遞歸2函數(shù)與運算符重載函數(shù)與運算符重載3函數(shù)與函數(shù)與C+程序結構程序結構42Database & Information System Lab第1頁/共257頁Database & Information System Lab3332332)3()2(2)3()2(2pqqpqqxr= 將計算公式分解為如下步驟將計算公式分解為如下步驟 令實數(shù)令實數(shù)x xr rA+BA+B 令實數(shù)令實數(shù)A, B A, B 分別為實數(shù)分別為實數(shù)R,SR,S的立方根的立方根 令令R = -q/2 + a,

2、S = -q/2R = -q/2 + a, S = -q/2a a 令令a=sqrt(q/2)a=sqrt(q/2)* *(q/2)+(q/3)(q/2)+(q/3)* *(q/3)(q/3)* *(q/3(q/3) ) 第2頁/共257頁Database & Information System Lab4第3頁/共257頁Database & Information System Lab5#include/program5-1#include/use function sqrtusing namespace std;void main(void)float p, q, xr; coutP;c

3、outq;coutThe Equation is:;coutx3+px+q=0eps);A = croot;croot = S;doroot = croot;croot = (2*root + S/(root*root)/3;while(fabs(croot-root)eps);B = croot;xr = A + B;coutendlThe real root of the equation iseps);A = croot;croot = S;doroot = croot;croot = (2*root + S/(root*root)/3;while(fabs(croot-root)eps

4、);B = croot;第6頁/共257頁Database & Information System Lab8第7頁/共257頁Database & Information System Lab9第8頁/共257頁Database & Information System Lab10float cuberoot(float x)/精確到小數(shù)點后精確到小數(shù)點后6位位float root , croot;const float eps=1e-6;croot=x;do root=croot; croot=(2*root+x/(root*root)/3; while(fabs(crootroot)ep

5、s);return croot;第9頁/共257頁Database & Information System Lab11第10頁/共257頁Database & Information System Lab12#inlcudeusing namespace std;void printString();/函數(shù)原型函數(shù)原型int main() printString();/調用函數(shù)調用函數(shù)printString return 0;void pirntString()/函數(shù)定義函數(shù)定義 cout“Hello!”endl; return; /函數(shù)返回函數(shù)返回第11頁/共257頁Database &

6、Information System Lab13第12頁/共257頁Database & Information System Lab14第13頁/共257頁從從函數(shù)形式函數(shù)形式劃分劃分,可分為無參函,可分為無參函數(shù)與有參函數(shù)兩數(shù)與有參函數(shù)兩類類從從使用角度使用角度劃分劃分,可將函數(shù)分為,可將函數(shù)分為:系統(tǒng)預定義系統(tǒng)預定義的的標準庫函數(shù)(如標準庫函數(shù)(如,sinsin,absabs等等),以及由),以及由用戶用戶自定義自定義的函數(shù)的函數(shù)函數(shù)分類函數(shù)分類方法方法15Database & Information System Lab第14頁/共257頁Database & Information

7、System Lab16第15頁/共257頁Database & Information System Lab17第16頁/共257頁Database & Information System Lab18第17頁/共257頁Database & Information System Lab19第18頁/共257頁Database & Information System Lab20void printStar() for(int i=0;i10;i+) cout“*”; coutendl;第19頁/共257頁與傳遞過來的那些不同值有關的某種功能。Database & Information S

8、ystem Lab21第20頁/共257頁Database & Information System Lab22void printStar(int k) for(int i=0;ik;i+) cout“*”; coutendl;第21頁/共257頁函數(shù)函數(shù)的使用的使用調用調用說明與定義說明與定義參數(shù)參數(shù)重載重載返回返回內聯(lián)函數(shù)內聯(lián)函數(shù)23Database & Information System Lab第22頁/共257頁Database & Information System Lab24第23頁/共257頁Database & Information System Lab25第24頁/共

9、257頁Database & Information System Lab26第25頁/共257頁n標識符Database & Information System Lab27第26頁/共257頁Database & Information System Lab28第27頁/共257頁Database & Information System Lab29第28頁/共257頁Database & Information System Lab30#includeusing namespace std;void printStar(int);/函數(shù)原型函數(shù)原型int main() printStar

10、(10);/調用函數(shù)調用函數(shù)void printStar(int k)/函數(shù)體函數(shù)體#includeusing namespace std;void printStar(int k)/函數(shù)定義函數(shù)定義int main()printStar(10); /調用函數(shù)調用函數(shù)第29頁/共257頁Database & Information System Lab31第30頁/共257頁Database & Information System Lab32第31頁/共257頁Database & Information System Lab33第32頁/共257頁Database & Informatio

11、n System Lab34第33頁/共257頁Database & Information System Lab35第34頁/共257頁n數(shù)值型n引用類型Database & Information System Lab36第35頁/共257頁nDatabase & Information System Lab37第36頁/共257頁Database & Information System Lab38第一種格式的第一種格式的returnreturn用于立即從被調函數(shù)中返回用于立即從被調函數(shù)中返回, , 當函數(shù)類型為當函數(shù)類型為voidvoid時,應使用這種格式的返回語句。時,應使用這種格式

12、的返回語句。當函數(shù)類型為當函數(shù)類型為非非voidvoid型時,應使用第二或第三種格式的型時,應使用第二或第三種格式的returnreturn語句,此兩種格式的語句效果完全相同(可將第二種格式看成是第三種格式的省略形式),系統(tǒng)此時都將計算出表達式的值,并語句,此兩種格式的語句效果完全相同(可將第二種格式看成是第三種格式的省略形式),系統(tǒng)此時都將計算出表達式的值,并“攜帶攜帶”該值立即從被調函數(shù)中返回該值立即從被調函數(shù)中返回第37頁/共257頁Database & Information System Lab39第38頁/共257頁Database & Information System Lab

13、40第39頁/共257頁Database & Information System Lab41第40頁/共257頁Database & Information System Lab42第41頁/共257頁Database & Information System Lab43 f=(xf=(x* *x+x+1)/2-5.5; x+x+1)/2-5.5; 不可給函數(shù)名不可給函數(shù)名f f賦值。賦值。 return (f); return (f); 返回值類型應該是返回值類型應該是doubledouble,而非指針類型(函數(shù)名相當于一個指針)。而非指針類型(函數(shù)名相當于一個指針)。 f(x)=(xf(

14、x)=(x* *x+x+1)/2-5.5; x+x+1)/2-5.5; 賦值號左端非變量(也即賦值號左端非變量(也即f(x)f(x)非左值)。非左值)。 第42頁/共257頁Database & Information System Lab44第43頁/共257頁Database & Information System Lab45第44頁/共257頁Database & Information System Lab46第45頁/共257頁Database & Information System Lab47#includeusing namespace std;void func(int a

15、=11, int b=22, int c=33) /為參數(shù)為參數(shù)a、b、c設置了默認值設置了默認值11、22與與33couta=a, b=b, c=cendl; 第46頁/共257頁Database & Information System Lab48第47頁/共257頁Database & Information System Lab49第48頁/共257頁Database & Information System Lab50 void func(int a, int b=2, int c=3); /OK! v o i d f u n c ( i n t a = 1 , i n t b ,

16、i n t c = 3 ) ; /ERROR! v o i d f u n c ( i n t a = 1 , i n t b = 2 , i n t c ) ; /ERROR! 對第一個函數(shù)說明,采用如下的調用語句:對第一個函數(shù)說明,采用如下的調用語句: func(1, 22, 333); /OK! 調用時給出所有實參調用時給出所有實參 func(); / ERROR! 參數(shù)參數(shù)a沒有默認值沒有默認值 func(10,20); /OK! 參數(shù)參數(shù)c默認為默認為3 func(5, ,9);/ERROR!調用處也只能缺省后面的連續(xù)若干個實參調用處也只能缺省后面的連續(xù)若干個實參 第49頁/共257

17、頁Database & Information System Lab51第50頁/共257頁Database & Information System Lab52第51頁/共257頁Database & Information System Lab53第52頁/共257頁return ab;Database & Information System Lab54第53頁/共257頁n實參為a10,形參可以定義為x6Database & Information System Lab55第54頁/共257頁Database & Information System Lab56第55頁/共257頁Da

18、tabase & Information System Lab57#includeusing namespace std;void strcat(char s,char ct) int i=0,j=0; while (si!=0) i+; while (ctj!=0) si+=ctj+; si=0;第56頁/共257頁Database & Information System Lab58int main (void) char a40=李明李明; char b20=是東南大學學生是東南大學學生; strcat(a,b);/實參為數(shù)組名實參為數(shù)組名 coutaendl;/打印字符數(shù)組打印字符數(shù)組

19、a return 0;第57頁/共257頁Database & Information System Lab59第58頁/共257頁Database & Information System Lab60#includeusing namespace std;void inverse(int 36, int 63);/轉置矩陣轉置矩陣void multi(int 63,int 34,int 64);/矩陣乘法矩陣乘法void output(int 64); /矩陣輸出矩陣輸出int main() int middle63, result64; int matrix136=8,10,12,23,1

20、,3,5,7,9,2,4,6,34,45,56,2,4,6; int matrix234=3,2,1,0,-1,-2,9,8,7,6,5,4; inverse(matrix1,middle);/實參為數(shù)組名實參為數(shù)組名 multi(middle,matrix2,result); output(result); return 0;第59頁/共257頁Database & Information System Lab61void inverse(int matrix136,int middle63)/轉置轉置 int i,j; for (i=0;i3;i+) for (j=0;j6;j+) mid

21、dleji=matrix1ij; return;void multi(int middle63,int matrix234,int result64) int i,j,k; /矩陣乘法矩陣乘法 for (i=0;i6;i+) for (j=0;j4;j+) resultij = 0; for (k=0;k3;k+) resultij+=middleik*matrix2kj; return; 第60頁/共257頁Database & Information System Lab62void output(int result64) /矩陣輸出矩陣輸出 cout resultn; int i,j;

22、 for (i=0;i6;i+) for (j=0;j4;j+) cout setw(4)resultij ; coutn; return; 第61頁/共257頁參的變量引用是一種方法n還可以用指針做形參操作變量地址Database & Information System Lab63第62頁/共257頁Database & Information System Lab64第63頁/共257頁Database & Information System Lab65第64頁/共257頁Database & Information System Lab66第65頁/共257頁Database & I

23、nformation System Lab67void swap (int x, int y) int temp = x; x = y; y = temp;第66頁/共257頁Database & Information System Lab68第67頁/共257頁Database & Information System Lab69第68頁/共257頁Database & Information System Lab70第69頁/共257頁Database & Information System Lab71第70頁/共257頁Database & Information System La

24、b72第71頁/共257頁Database & Information System Lab73第72頁/共257頁Database & Information System Lab74第73頁/共257頁Database & Information System Lab75第74頁/共257頁Database & Information System Lab76第75頁/共257頁Database & Information System Lab77第76頁/共257頁Database & Information System Lab78第77頁/共257頁Database & Inform

25、ation System Lab79第78頁/共257頁Database & Information System Lab80第79頁/共257頁Database & Information System Lab81第80頁/共257頁Database & Information System Lab82第81頁/共257頁Database & Information System Lab83第82頁/共257頁Database & Information System Lab84第83頁/共257頁Database & Information System Lab85第84頁/共257頁Da

26、tabase & Information System Lab86第85頁/共257頁Database & Information System Lab87第86頁/共257頁Database & Information System Lab88第87頁/共257頁Database & Information System Lab89第88頁/共257頁Database & Information System Lab90第89頁/共257頁Database & Information System Lab91第90頁/共257頁Database & Information System La

27、b92第91頁/共257頁函數(shù)的說明與使用函數(shù)的說明與使用1函數(shù)的嵌套與遞歸函數(shù)的嵌套與遞歸2函數(shù)與運算符重載函數(shù)與運算符重載3函數(shù)與函數(shù)與C+程序結構程序結構493Database & Information System Lab第92頁/共257頁Database & Information System Lab94第93頁/共257頁Database & Information System Lab95第94頁/共257頁Database & Information System Lab96第95頁/共257頁Database & Information System Lab97第96頁

28、/共257頁Database & Information System Lab98第97頁/共257頁Database & Information System Lab99第98頁/共257頁Database & Information System Lab100第99頁/共257頁Database & Information System Lab101第100頁/共257頁Database & Information System Lab102第101頁/共257頁Database & Information System Lab103第102頁/共257頁Database & Inform

29、ation System Lab104第103頁/共257頁Database & Information System Lab105第104頁/共257頁Database & Information System Lab106第105頁/共257頁Database & Information System Lab107第106頁/共257頁a運行狀態(tài)繼續(xù)運行a函數(shù)Database & Information System Lab108第107頁/共257頁Database & Information System Lab109第108頁/共257頁運行狀態(tài)繼續(xù)運行主函數(shù)Database & I

30、nformation System Lab110第109頁/共257頁Database & Information System Lab111第110頁/共257頁Database & Information System Lab112第111頁/共257頁Database & Information System Lab113第112頁/共257頁Database & Information System Lab114第113頁/共257頁Database & Information System Lab115第114頁/共257頁Database & Information System

31、Lab116第115頁/共257頁Database & Information System Lab117第116頁/共257頁Database & Information System Lab118第117頁/共257頁Database & Information System Lab119第118頁/共257頁Database & Information System Lab120第119頁/共257頁Database & Information System Lab121第120頁/共257頁Database & Information System Lab122第121頁/共257頁D

32、atabase & Information System Lab123第122頁/共257頁Database & Information System Lab124第123頁/共257頁Database & Information System Lab125第124頁/共257頁Database & Information System Lab126第125頁/共257頁Database & Information System Lab127第126頁/共257頁Database & Information System Lab128第127頁/共257頁Database & Informat

33、ion System Lab129第128頁/共257頁Database & Information System Lab130第129頁/共257頁Database & Information System Lab131第130頁/共257頁Database & Information System Lab132第131頁/共257頁Database & Information System Lab133第132頁/共257頁Database & Information System Lab134第133頁/共257頁Database & Information System Lab135第

34、134頁/共257頁Database & Information System Lab136A柱B柱C柱第135頁/共257頁Database & Information System Lab137第136頁/共257頁source, char target),用來輸出搬動一個盤子的提示信息。Database & Information System Lab138第137頁/共257頁Database & Information System Lab139第138頁/共257頁Database & Information System Lab140第139頁/共257頁Database & I

35、nformation System Lab141第140頁/共257頁Database & Information System Lab142hanoi(2,A,C,B)A Chanoi(3,A,B,C) hanoi(1,A,B,C)hanoi(1,B,C,A)C BB AA CB Chanoi(1,A,B,C)A Bhanoi(1,C,A,B)A Chanoi(2,B,A,C)漢諾塔程序執(zhí)行框漢諾塔程序執(zhí)行框圖圖輸入盤子數(shù):輸入盤子數(shù):3第141頁/共257頁Database & Information System Lab143A B C第142頁/共257頁Database & Info

36、rmation System Lab144A B C第143頁/共257頁Database & Information System Lab145A B C第144頁/共257頁Database & Information System Lab146A B C第145頁/共257頁Database & Information System Lab147A B C第146頁/共257頁Database & Information System Lab148A B C第147頁/共257頁Database & Information System Lab149A B C第148頁/共257頁Dat

37、abase & Information System Lab150A B C第149頁/共257頁Database & Information System Lab151第150頁/共257頁Database & Information System Lab152第151頁/共257頁Database & Information System Lab153第152頁/共257頁Database & Information System Lab154第153頁/共257頁Database & Information System Lab155第154頁/共257頁Database & Infor

38、mation System Lab156第155頁/共257頁Database & Information System Lab157第156頁/共257頁函數(shù)的說明與使用函數(shù)的說明與使用1函數(shù)的嵌套與遞歸函數(shù)的嵌套與遞歸2函數(shù)與運算符重載函數(shù)與運算符重載3函數(shù)與函數(shù)與C+程序結構程序結構4158Database & Information System Lab第157頁/共257頁Database & Information System Lab159第158頁/共257頁Database & Information System Lab160第159頁/共257頁Database & In

39、formation System Lab161第160頁/共257頁Database & Information System Lab162第161頁/共257頁Database & Information System Lab163第162頁/共257頁Database & Information System Lab164第163頁/共257頁Database & Information System Lab165第164頁/共257頁Database & Information System Lab166第165頁/共257頁Database & Information System L

40、ab167第166頁/共257頁Database & Information System Lab168第167頁/共257頁Database & Information System Lab169第168頁/共257頁Database & Information System Lab170第169頁/共257頁Database & Information System Lab171第170頁/共257頁Database & Information System Lab172第171頁/共257頁Database & Information System Lab173第172頁/共257頁Da

41、tabase & Information System Lab174第173頁/共257頁Database & Information System Lab175第174頁/共257頁Database & Information System Lab176第175頁/共257頁Database & Information System Lab177第176頁/共257頁Database & Information System Lab178第177頁/共257頁Database & Information System Lab179第178頁/共257頁Database & Informati

42、on System Lab180第179頁/共257頁Database & Information System Lab181第180頁/共257頁Database & Information System Lab182第181頁/共257頁Database & Information System Lab183第182頁/共257頁Database & Information System Lab184第183頁/共257頁函數(shù)的說明與使用函數(shù)的說明與使用1函數(shù)的嵌套與遞歸函數(shù)的嵌套與遞歸2函數(shù)與運算符重載函數(shù)與運算符重載3函數(shù)與函數(shù)與C+程序結構程序結構4185Database & Inf

43、ormation System Lab第184頁/共257頁Database & Information System Lab186生存期生存期作用域作用域存儲類型存儲類型函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞全局變量全局變量局部變量局部變量SPSP框架框架標準庫標準庫函數(shù)函數(shù)標準庫標準庫函數(shù)函數(shù)第185頁/共257頁Database & Information System Lab187第186頁/共257頁Database & Information System Lab188第187頁/共257頁Database & Information System Lab189#include / For ve

44、ctor#include / For sort()#include / For greater()#include #include / For srand() & rand()#include / For time()using namespace std;第188頁/共257頁Database & Information System Lab190第189頁/共257頁Database & Information System Lab191第190頁/共257頁Database & Information System Lab192標準庫標準庫函數(shù)函數(shù)生存期生存期作用域作用域存儲類型存儲類

45、型函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞全局變量全局變量局部變量局部變量SPSP框架框架SPSP框架框架第191頁/共257頁Database & Information System Lab193第192頁/共257頁Database & Information System Lab194第193頁/共257頁Database & Information System Lab195第194頁/共257頁Database & Information System Lab196SPSP框架框架標準庫標準庫函數(shù)函數(shù)生存期生存期作用域作用域存儲類型存儲類型函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞全局變量全局變量局部變量局部變量全

46、局變量全局變量局部變量局部變量第195頁/共257頁Database & Information System Lab197棧區(qū)(函數(shù)局部數(shù)據(jù))棧區(qū)(函數(shù)局部數(shù)據(jù))全局數(shù)據(jù)區(qū)全局數(shù)據(jù)區(qū)( (全局、靜態(tài)全局、靜態(tài)) )代碼區(qū)(程序代碼)代碼區(qū)(程序代碼)(主函數(shù)局部數(shù)據(jù))(主函數(shù)局部數(shù)據(jù))自由存儲區(qū)(堆、動態(tài)數(shù)據(jù)自由存儲區(qū)(堆、動態(tài)數(shù)據(jù)) )第196頁/共257頁Database & Information System Lab198第197頁/共257頁Database & Information System Lab199第198頁/共257頁Database & Information S

47、ystem Lab200第199頁/共257頁Database & Information System Lab201第200頁/共257頁Database & Information System Lab202全局變量全局變量局部變量局部變量SPSP框架框架標準庫標準庫函數(shù)函數(shù)生存期生存期作用域作用域存儲類型存儲類型函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞第201頁/共257頁參數(shù)參數(shù)傳遞傳遞返回語句返回語句賦值參數(shù)賦值參數(shù)引用參數(shù)引用參數(shù)指針類型參數(shù)指針類型參數(shù)全局變量全局變量數(shù)組類型參數(shù)數(shù)組類型參數(shù)203Database & Information System Lab第202頁

48、/共257頁Database & Information System Lab204第203頁/共257頁Database & Information System Lab205第204頁/共257頁Database & Information System Lab206第205頁/共257頁Database & Information System Lab207第206頁/共257頁Database & Information System Lab208第207頁/共257頁Database & Information System Lab209第208頁/共257頁Database & I

49、nformation System Lab210第209頁/共257頁Database & Information System Lab211函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞全局變量全局變量局部變量局部變量SPSP框架框架標準庫標準庫函數(shù)函數(shù)生存期生存期作用域作用域存儲類型存儲類型存儲類型存儲類型第210頁/共257頁Database & Information System Lab212第211頁/共257頁存儲類型存儲類型靜態(tài)靜態(tài)寄存器寄存器外部外部自動自動213Database & Information System Lab第212頁/共257頁Database & Information S

50、ystem Lab214第213頁/共257頁Database & Information System Lab215第214頁/共257頁Database & Information System Lab216第215頁/共257頁Database & Information System Lab217第216頁/共257頁Database & Information System Lab218第217頁/共257頁Database & Information System Lab219第218頁/共257頁Database & Information System Lab220第219頁/

51、共257頁Database & Information System Lab221第220頁/共257頁Database & Information System Lab222第221頁/共257頁Database & Information System Lab223第222頁/共257頁Database & Information System Lab224第223頁/共257頁Database & Information System Lab225第224頁/共257頁Database & Information System Lab226第225頁/共257頁Database & Information System Lab227第226頁/共257頁Database & Information System Lab228存儲類型存儲類型函數(shù)數(shù)據(jù)函數(shù)數(shù)據(jù)傳遞傳遞全局變量全局變量局部

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論