freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言與程序設(shè)計(jì)大學(xué)教程(中)ppt(編輯修改稿)

2024-11-13 03:48 本頁面
 

【文章內(nèi)容簡介】 。 } 【例 542】 采用內(nèi)聯(lián)函數(shù)編程求 3個(gè)數(shù)中的最大值。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 53 函數(shù)重載 函數(shù)的重載是指同名函數(shù)對應(yīng)多個(gè)不同的函數(shù)實(shí)現(xiàn)。重載函數(shù)要求同名函數(shù)具有相同的功能,而只是函數(shù)類型、參數(shù)個(gè)數(shù)或參數(shù)順序不同。系統(tǒng)將根據(jù)同名函數(shù)的這些不同之處來選擇其對應(yīng)的實(shí)現(xiàn)。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 54 函數(shù)重載實(shí)例 include int max(int x,int y) {return (xy?x:y)。} float max(float x,float y) {return (xy?x:y)。} double max(double x,double y) {return (xy?x:y)。} void main() { int a1=6,b1=15。 float a2=,b2=。 double a3=,b3=0。 coutintmax=max(a1,b1)endl。 coutfloatmax=max(a2,b2)endl。 coutdoublemax=max(a3,b3)endl。 } 【 例 551】 求 3個(gè)數(shù)中最大的數(shù)。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 55 函數(shù)重載 【 說明】 ( 1)函數(shù)調(diào)用時(shí),編譯器會根據(jù)重載函數(shù)的參數(shù)個(gè)數(shù)、參數(shù)類型惟一地確定調(diào)用哪個(gè)函數(shù); ( 2)函數(shù)重載體現(xiàn)了 OOP技術(shù)對多態(tài)性的支持,即同一接口,多種實(shí)現(xiàn)方法的多態(tài)性機(jī)制。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 56 函數(shù)重載實(shí)例 【 例 562】 編寫一個(gè)程序,用來求兩個(gè)整數(shù)或3個(gè)整數(shù)中的最大數(shù)。如果輸入兩個(gè)整數(shù),程序就輸出這兩個(gè)整數(shù)中的最大數(shù),如果輸入 3個(gè)整數(shù),程序就輸出這 3個(gè)整數(shù)中的最大數(shù)。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 57 函數(shù)重載實(shí)例 include void main( ) {int max(int a,int b,int c)。 int max(int a,int b)。 int a=8,b=12,c=27。 coutmax(a,b,c)=max(a,b,c)endl。 coutmax(a,b)=max(a,b)endl。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 58 函數(shù)重載實(shí)例 int max(int a,int b,int c) { int z。 z=(ab?a:b)。 if(cz) return c。 else return z。 } int max(int a,int b) { int z。 z=(ab?a:b)。 return z。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 59 函數(shù)模板 (function template) 所謂函數(shù)模板,實(shí)際上是建立一個(gè)通用函數(shù),其函數(shù)類型和形參類型不具體指定,用一個(gè)虛擬的類型來代表。這個(gè)通用函數(shù)就稱為函數(shù)模板。 凡是函數(shù)體相同的函數(shù)都可以用這個(gè)模板來代替,不必定義多個(gè)函數(shù),只需在模板中定義一次即可。在調(diào)用函數(shù)時(shí)系統(tǒng)會根據(jù)實(shí)參的類型來取代模板中的虛擬類型,從而實(shí)現(xiàn)了不同函數(shù)的功能。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 60 函數(shù)模板實(shí)例 include templatetypename T //模板聲明,其中 T為類型參數(shù) T max(T a,T b,T c) //定義一個(gè)通用函數(shù),用 T作虛擬的類型名 {if(ba) a=b。 if(ca) a=c。 return a。 } 【 例 561】 用函數(shù)模板實(shí)現(xiàn):求 3個(gè)數(shù)中最大的數(shù) 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 61 函數(shù)模板實(shí)例 void main( ) {int i1=185,i2=76,i3=567,i。 double d1=,d2=,d3=,d。 long g1=67854,g2=912456,g3=673456,g。 i=max(i1,i2,i3)。 //調(diào)用模板函數(shù),此時(shí) T被 int取代 d=max(d1,d2,d3)。 //調(diào)用模板函數(shù),此時(shí) T被 double取代 g=max(g1,g2,g3)。 //調(diào)用模板函數(shù),此時(shí) T被 long取代 couti_max=iendl。 coutf_max=dendl。 coutg_max=gendl。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 62 具有缺省參數(shù)值的函數(shù) 有時(shí)多次調(diào)用同一函數(shù)時(shí)用同樣的實(shí)參,C++提供簡單的處理辦法,給形參一個(gè)默認(rèn)值,這樣形參就不必一定要從實(shí)參取值了。例如: float area(float r=)。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 63 具有缺省參數(shù)值的函數(shù)實(shí)例 【 例 571】 閱讀程序,給出運(yùn)行結(jié)果。 include float fact(int n=10) {float f=1。 for(int i=2。i=n。i++) f*=i。 return f。} void main() { cout5!=fact(5)endl。 cout“10!=”fact()endl。 //利用缺省參數(shù) cout15!=fact(15)endl。} 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 64 具有缺省參數(shù)值的函數(shù) 【 說明】 (1) 缺省參數(shù)可以有多個(gè),但必須從后向前缺?。? 例如: int f(int a,int b=6,int c=3)。 int f(int a=2,int b,int c=3)。 // (2) 必須在函數(shù)調(diào)用前指定缺省參數(shù)的值。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 65 具有缺省參數(shù)值的函數(shù)實(shí)例 【 例 572】 求 2個(gè)或 3個(gè)正整數(shù)中的最大數(shù),用帶有默認(rèn)參數(shù)的函數(shù)實(shí)現(xiàn)。 include void main( ) {int max(int a, int b, int c=0)。//函數(shù)聲明 ,形參 c有默認(rèn)值 int a,b,c。 cinabc。 coutmax(a,b,c)=max(a,b,c)endl。 coutmax(a,b)=max(a,b)endl。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 66 具有缺省參數(shù)值的函數(shù)實(shí)例 int max(int a,int b,int c) //函數(shù)定義 {if(ba) a=b。 if(ca) a=c。 return a。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 67 變量的存儲屬性 局部變量和全局變量 1. 局部變量 在一個(gè)函數(shù)和類內(nèi)部定義的變量稱為內(nèi)部變量。其作用域?yàn)椋憾x它的函數(shù)或類內(nèi)起作用。局部變量的作用域有:塊作用域、函數(shù)原型作用域、函數(shù)作用域和類作用域。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 68 局部變量實(shí)例 在塊中聲明的標(biāo)識符,只能在該塊中引用。 生存期:開始于標(biāo)識符的說明處,結(jié)束于塊的結(jié)尾處。 void main( ) main( ) {int m,n。 … { double m,z。 //塊內(nèi)有效 … } } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 69 局部變量 【 說明】 ( 1)在不同的塊中,允許有同名變量;在相同的塊中,不允許有同名變量; ( 2)局部變量:在塊中或函數(shù)內(nèi)部定義的變量成為局部變量; ( 3)局部優(yōu)先規(guī)則:塊內(nèi)標(biāo)識符將屏蔽同名標(biāo)識符; 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 70 局部變量 實(shí)例 【 例 581】 閱讀下列程序,給出運(yùn)行結(jié)果。 結(jié)果: 10 20 30 50 60 110 10 20 110 include void main() { int i=10,j=20,k=30。 couti\tj\tk\n。 { int i=50,j=60。 k=i+j。 couti\tj\tk\n。 } couti\tj\tk\n。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 71 局部變量 實(shí)例 【 例 582】 閱讀下列程序,給出運(yùn)行結(jié)果。 結(jié)果: 1 1 1 1 1 說明 : i的作用域在包含for語句的那個(gè)內(nèi)層塊。 include void main() { for(int i=0。i5。i++) { int j=0。 cout++j\t。 } } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 72 2 全局變量 在函數(shù)外部定義的變量(標(biāo)識符)稱為全局變量。其作用域?yàn)檎麄€(gè)文件,即從定義變量的位置開始到源程序結(jié)束。 【說明 】 ( 1)全局變量增加了函數(shù)之間數(shù)據(jù)聯(lián)系的渠道,全局變量作用域內(nèi)的函數(shù),均可使用、修改該全局變量的值,但是使用全局變量降低了程序的可理解性,軟件工程學(xué)提倡盡量避免或少用使用全局變量。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 73 全局變量 ( 2)局部優(yōu)先規(guī)則:塊作用域內(nèi)的變量與全局變量同名時(shí),在塊作用域內(nèi)可通過域運(yùn)算符“ ::”來使用全局變量 ; ( 3) 若全局變量使用在前,定義在后時(shí),要對全局變量做外部說明。 (后面講存儲類時(shí)介紹 ) 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 74 全局變量實(shí)例 【 例 583】 閱讀下列程序,給出運(yùn)行結(jié)果。 結(jié)果: ::i=104 i=18 j=122 include int i=100。 void main() {int i,j=50。 i=18。 ::i=::i+4。 j=::i+i。 cout::i=::iendl。 couti=iendl。 coutj=jendl。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 75 變量的存儲類別 存儲類是對生存期的抽象。它規(guī)定了變量的生存期,確定什么時(shí)候?yàn)樽兞糠峙鋬?nèi)存空間,什么時(shí)候收回內(nèi)存空間。 C++存儲類有以下四種: auto , static , register , extern 存儲類 數(shù)據(jù)類型 標(biāo)識符 [=初始化表達(dá)式 ] 說明變量的語法格式: 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 76 auto 存儲類 (1) 自動(dòng)變量被聲明在內(nèi)部(函數(shù)、塊),如果不指定其存儲類型,那么就默認(rèn)為 auto型。關(guān)鍵字 auto 可以省略; 如: auto int a1,a2。? int a1,a2; (2)自動(dòng)存儲類變量是在動(dòng)態(tài)存儲區(qū)內(nèi)分配存儲單元的。其生存期局限于所在的塊; (3)對于 自動(dòng)變量,若沒有賦初值,其初值是不確定的。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 77 auto 存儲類實(shí)例 【例 584】 讀程序,寫結(jié)果。 結(jié)果: 2,2,2, include void main() {void increament()。 increament()。 increament()。 increament()。 } void increament() {int i=1。 i++。 couti,。 } 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 78 static 存儲類 ( 1) static也稱為靜態(tài)存儲類,永久存儲,其生存期是靜態(tài)的。 ( 2)如果在函數(shù)調(diào)用結(jié)束后,仍然希望保留函數(shù)中定義的局部變量的值,則可以將局部變量定義為靜態(tài)局部變量。 ( 3) static聲明語句在函數(shù)內(nèi)部時(shí),所聲明的標(biāo)識符具有局部作用域; static聲明語句在外部時(shí),所聲明的標(biāo)識符具有文件作用域。即只能被本文件中的函數(shù)調(diào)用。 太原工業(yè)學(xué)院計(jì)算機(jī)工程系 2021/11/10 79 static 存儲類實(shí)例 【 585】 閱讀程序,寫出運(yùn)行結(jié)果。 結(jié)果: static=0 static=1 static=2 static=3
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1