C復習材料譚浩強(精品)_第1頁
C復習材料譚浩強(精品)_第2頁
C復習材料譚浩強(精品)_第3頁
C復習材料譚浩強(精品)_第4頁
C復習材料譚浩強(精品)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C 復習材料譚浩強(精品) 第一章第一章C+的初步認識 1、C語言的主要特點是語言的主要特點是 1、C語言是一種結構化的程序設計語言,語言本身簡潔、使用靈活方便。 語言是一種結構化的程序設計語言,語言本身簡潔、使用靈活方便。 2、它既有高級語言的特點,又具有匯編語言的特點。 、它既有高級語言的特點,又具有匯編語言的特點。 3、程序的可移植性好。 、程序的可移植性好。 4、程序的語法結構不夠嚴密,程序設計的自由度大。 、程序的語法結構不夠嚴密,程序設計的自由度大。 不足不足C語言對數(shù)據(jù)類型檢查的機制比較弱;缺少支持代碼重用的結構;隨著軟件工程規(guī)模的擴大,難以適應開發(fā)特大型的程度等等。 程規(guī)模的擴大,難以適應開發(fā)特大型的程度等等。 (又把運算符的重載、引用、虛函數(shù)等功能加入到(又把運算符的重載、引用、虛函數(shù)等功能加入到C+中,使 2、源程序、源程序*.CPP目標文件目標文件*.OBJ可執(zhí)行文件可執(zhí)行文件*.EXE編譯過程編譯過程1)啟動)啟動Visual C+,選擇選擇“文件文件”菜單中的菜單中的“新建新建”命令,選擇File”選項。 選項。 2)選擇源程序存放的目錄和輸入源程序名,單擊)選擇源程序存放的目錄和輸入源程序名,單擊“確定3)在器中編寫源程序。 )在器中編寫源程序。 4)單擊)單擊F7或或“編譯編譯”中的中的“重建全部重建全部”編譯源程序,若編譯通過,單擊編譯源程序,若編譯通過,單擊“執(zhí)行看結果,任按一鍵返回器。 看結果,任按一鍵返回器。 第二章第二章數(shù)據(jù)類型、運算符與表達式數(shù)據(jù)類型、運算符與表達式 1、CPU(data)內存內存(program)外存用一個字節(jié)表示整數(shù),范圍為用一個字節(jié)表示整數(shù),范圍為-128127;用兩個字節(jié)表示整數(shù),范圍為;用兩個字節(jié)表示整數(shù),范圍為-3276832767。 一般用四個字節(jié)表示整數(shù)。 般用四個字節(jié)表示整數(shù)。 2、變量在程序的執(zhí)行中能夠賦值,發(fā)生變化。 變量有一個名字,并在使用之前要說明其類型,一經(jīng)說明,就在內存中占據(jù)與其類型相應的存儲單元。 型,一經(jīng)說明,就在內存中占據(jù)與其類型相應的存儲單元。 變量名、數(shù)組名、函數(shù)名稱為標識符。 變量名、數(shù)組名、函數(shù)名稱為標識符。 標識符只能由字母、數(shù)字、下劃線這三種字符組成,且第一個字符必須為字母或下劃線,長度不大于長度不大于247個字符,大小寫不通用。 (關鍵字不能作為標識符)。 個字符,大小寫不通用。 (關鍵字不能作為標識符)。 變量必須使用前定義,以分配空間。 變量必須使用前定義,以分配空間。 常量是根據(jù)其表面形式來判定,整型量即是沒有小數(shù)點的整數(shù),范圍常量是根據(jù)其表面形式來判定,整型量即是沒有小數(shù)點的整數(shù),范圍-231(有三種形式有三種形式:1)十進制(默認方式)十進制(默認方式)2)八進制)八進制以整型變量分為有符號型與無符號型。 整型變量分為有符號型與無符號型。 有符號型有符號型short在內存中占兩個字節(jié),范圍為在內存中占兩個字節(jié),范圍為-215(int在內存中占四個字節(jié),范圍為在內存中占四個字節(jié),范圍為-231(231-1)long在內存中占四個字節(jié),范圍為在內存中占四個字節(jié),范圍為-231231-1無符號型最高位不表示符號位無符號型最高位不表示符號位unsigned short在內存中占兩個字節(jié),范圍為在內存中占兩個字節(jié),范圍為0216-1unsigned int在內存中占四個字節(jié),范圍為在內存中占四個字節(jié),范圍為0232-1unsigned long在內存中占四個字節(jié),范圍為在內存中占四個字節(jié),范圍為0232-11)整型常量亦有長短之分,常量中無)整型常量亦有長短之分,常量中無unsigned型,但一個非負的整型常量可以賦給型的變量。 型的變量。 2)若一個常量定義為長整型數(shù),則在其后加)若一個常量定義為長整型數(shù),則在其后加l或不同類型的整型數(shù)據(jù)間的賦值歸根到底就是一條按存儲單元中的存儲形式直接傳送。 不同類型的整型數(shù)據(jù)間的賦值歸根到底就是一條按存儲單元中的存儲形式直接傳送。 #includevoid main()unsigned shorta;couta=多字節(jié)多字節(jié)1)若多字節(jié)變量為)若多字節(jié)變量為unsigned,則轉換后多余字節(jié)補零。 則轉換后多余字節(jié)補零。 2)若多字節(jié)變量為有符號型,則轉換后擴展少字節(jié)的最高位。 )若多字節(jié)變量為有符號型,則轉換后擴展少字節(jié)的最高位。 轉換后,數(shù)據(jù)的符號不變。 轉換后,數(shù)據(jù)的符號不變。 多字節(jié)多字節(jié)少字節(jié)少字節(jié)低位照搬低位照搬=的結合性為自右至左的結合性為自右至左關系運算符和關系表達式關系運算符和關系表達式3.算術運算符的優(yōu)先級大于關系運算符的優(yōu)先級算術運算符的優(yōu)先級大于關系運算符的優(yōu)先級關系表達式用關系運算符將表達式連接起來稱為關系表達式。 其值非真即假。 在關系表達式用關系運算符將表達式連接起來稱為關系表達式。 其值非真即假。 在C+語言中,用非言中,用非0代表真,用代表真,用0表示假。 關系表達式的結果只有兩個,真為表示假。 關系表達式的結果只有兩個,真為1,假為邏輯運算符邏輯運算符注意事項注意事項1.作為條件,所有非作為條件,所有非0值均為真;作為結果,只有值均為真;作為結果,只有0或2.不可寫為不可寫為1 當前面的表達式可以得出整個表達式的結果時,不必再求后面的表達式。 sizeof()運算符是一個單目運算符,用于計算某一個操作數(shù)類型的字節(jié)數(shù)。 其格式為運算符是一個單目運算符,用于計算某一個操作數(shù)類型的字節(jié)數(shù)。 其格式為sizeof()逗號運算符和逗號表達式逗號運算符和逗號表達式表達式表達式1,表達式,表達式2,表達式,表達式3,表達式,表達式n順序求解,結果為最后一個表達式的值,并且優(yōu)先級最低。 順序求解,結果為最后一個表達式的值,并且優(yōu)先級最低。 各類數(shù)值型數(shù)據(jù)間的混合運算各類數(shù)值型數(shù)據(jù)間的混合運算整型、實型、字符型數(shù)據(jù)間可以混合運算。 整型、實型、字符型數(shù)據(jù)間可以混合運算。 在進行運算時,不同類型的數(shù)據(jù)要先轉換成同一類型的數(shù)據(jù)再進行運算。 在進行運算時,不同類型的數(shù)據(jù)要先轉換成同一類型的數(shù)據(jù)再進行運算。 轉換規(guī)則如下轉換規(guī)則如下P33第三章第三章簡單的輸入輸出簡單的輸入輸出輸入語句輸入語句cin要使用要使用C+提供的輸入輸出時,必須在程序的開頭增加一行提供的輸入輸出時,必須在程序的開頭增加一行#include輸入語句自動過濾空白字符。 字符型變量過濾空白字符。 輸入語句自動過濾空白字符。 字符型變量過濾空白字符。 cin格式過濾空白字符在缺省的情況下,在缺省的情況下,cin自動跳過輸入的空格,換言之,自動跳過輸入的空格,換言之,cin不能將輸入的空格賦給字符型變量,同樣地,回車鍵也是作為輸入字符之間的分隔符,也不能將輸入的回車鍵字符賦給字符型變量。 符型變量。 后運算語,假為0。 或1兩種。 兩種。 格式過濾空白字符不能將輸入的空格賦給字符型變量,同樣地,回車鍵也是作為輸入字符之間的分隔符,也不能將輸入的回車鍵字符賦給字若要把從鍵盤上輸入的每一個字符,包括空格和回車鍵都作為一個輸入字符賦給字符型變量時,必須使用函數(shù)量時,必須使用函數(shù)cin.get()。 其格式為。 其格式為cin.get();cin.get()從輸入行中取出一個字符,并將它賦給字符型變量。 這個語句一次只能從輸入行中提取一個字符。 提取一個字符。 在缺省的情況下,系統(tǒng)約定輸入的整型數(shù)是十進制數(shù)據(jù)。 當要求按八進制或十六進制輸入數(shù)據(jù)時,在數(shù)據(jù)時,在cin中必須指明相應的數(shù)據(jù)類型中必須指明相應的數(shù)據(jù)類型hex為十六進制;int i,j,k,l;cinhexi;/指明輸入為十六進制數(shù)指明輸入為十六進制數(shù)cinoctj;/指明輸入為八進制數(shù)指明輸入為八進制數(shù)cink;/輸入仍為八進制數(shù)輸入仍為八進制數(shù)cindecl;/指明輸入為十進制數(shù)指明輸入為十進制數(shù)當執(zhí)行到語句當執(zhí)行到語句cin時,若輸入的數(shù)據(jù)為時,若輸入的數(shù)據(jù)為11111212使用非十進制數(shù)輸入時,要注意以下幾點使用非十進制數(shù)輸入時,要注意以下幾點 1、八進制或十六進制數(shù)的輸入,只能適用于整型變量,不適用于字符型變量,實型變量。 、八進制或十六進制數(shù)的輸入,只能適用于整型變量,不適用于字符型變量,實型變量。 2、當在、當在cin中指明使用的數(shù)制輸入后,則所指明的數(shù)制一直有效,直到在接著的中指明使用的數(shù)制輸入后,則所指明的數(shù)制一直有效,直到在接著的cin中指明輸入時所使用的另一數(shù)制為止。 如上例中,輸入明輸入時所使用的另一數(shù)制為止。 如上例中,輸入k的值時,仍為八進制。 3、輸入數(shù)據(jù)的格式、個數(shù)和類型必須與、輸入數(shù)據(jù)的格式、個數(shù)和類型必須與cin中所列舉的變量類型一一對應。 一旦輸入出錯,不僅使當前的輸入數(shù)據(jù)不正確,而且使得后面的提取數(shù)據(jù)也不正確。 不僅使當前的輸入數(shù)據(jù)不正確,而且使得后面的提取數(shù)據(jù)也不正確。 輸出數(shù)據(jù)輸出數(shù)據(jù)cout與輸入與輸入cin對應的輸出是對應的輸出是cout輸出流。 輸出流。 當要輸出一個表達式的值時,可使用當要輸出一個表達式的值時,可使用cout來實現(xiàn),其一般格式為來實現(xiàn),其一般格式為cout.;其中運算符其中運算符“”稱為插入運算符,它將緊跟其后的表達式的值,輸出到顯示器當前光標的位置。 位置。 t為轉義字符為轉義字符Tab endl為回車或為回車或ncout將雙引號中的字符串常量按其原樣輸出將雙引號中的字符串常量按其原樣輸出指定輸出項占用的寬度指定輸出項占用的寬度在輸出的數(shù)據(jù)項之間進行隔開的另一種辦法是指定輸出項的寬度。 如上面的兩個輸出語句可改寫為可改寫為cout (6) (10) (6)指明其后的輸出項占用的字符寬度為指明其后的輸出項占用的字符寬度為6,即括號中的值指出緊跟其后的輸出項占用的字符位置個數(shù),并向右對齊。 占用的字符位置個數(shù),并向右對齊。 setw是是“set width”的縮寫。 使用使用setw()應注意以下三點應注意以下三點 1、在程序的開始位置必須包含頭文件、在程序的開始位置必須包含頭文件iomanip.h,即在程序的開頭增加#include 2、括號中必須給出一個表達式(值為正整數(shù)),它指明緊跟其后輸出項的寬度。 、括號中必須給出一個表達式(值為正整數(shù)),它指明緊跟其后輸出項的寬度。 3、該設置僅對其后的一個輸出項有效。 一旦按指定的寬度輸出其后的輸出項后,又回到原來的缺省輸出方式。 來的缺省輸出方式。 輸出 八、十六進制數(shù)和科學表示法的實數(shù)輸出 八、十六進制數(shù)和科學表示法的實數(shù)對于整型數(shù)據(jù)可指定以十六進制或八進制輸出,而對于實型數(shù)據(jù)可指定以科學表示法形式輸出。 例如,設有如下一個程序輸出。 例如,設有如下一個程序若要把從鍵盤上輸入的每一個字符,包括空格和回車鍵都作為一個輸入字符賦給字符型變從輸入行中取出一個字符,并將它賦給字符型變量。 這個語句一次只能從輸入行中在缺省的情況下,系統(tǒng)約定輸入的整型數(shù)是十進制數(shù)據(jù)。 當要求按八進制或十六進制輸入為十六進制;oct為八進制;為八進制;dec為十進制。 為十進制。 中指的值時,仍為八進制。 中所列舉的變量類型一一對應。 一旦輸入出錯,稱為插入運算符,它將緊跟其后的表達式的值,輸出到顯示器當前光標的在輸出的數(shù)據(jù)項之間進行隔開的另一種辦法是指定輸出項的寬度。 如上面的兩個輸出語句,即括號中的值指出緊跟其后的輸出項的縮寫。 ,即在程序的開頭增加、該設置僅對其后的一個輸出項有效。 一旦按指定的寬度輸出其后的輸出項后,又回到原對于整型數(shù)據(jù)可指定以十六進制或八進制輸出,而對于實型數(shù)據(jù)可指定以科學表示法形式#includevoid main(void)float x=3.14,y=100;cout.setf(ios:scientific,ios:floatfield);/表明浮點數(shù)用科學表示法輸出表明浮點數(shù)用科學表示法輸出cout 對實數(shù)的輸出,也是這樣,一旦指明按科學表示法輸出實數(shù),則接著的輸出均按科學表示法輸出,直到指明以定點數(shù)輸出為止。 明確指定按定點數(shù)格式輸出(缺省的輸出方式)的語句為點數(shù)格式輸出(缺省的輸出方式)的語句為cout.setf(ios:fixed,ios:floatfield);C+的流程控制語句的流程控制語句if語句語句P64注意注意1)if后可跟復合語句。 后可跟復合語句。 2)注意注意;的位置。 ;的位置。 (if語句;語句;else語句;3)注意多重注意多重if else的搭配。 (可省略的搭配。 (可省略else)相互配對的語句要對齊。 if總是與它上面最近的總是與它上面最近的else配對,如要改變,用復合語句配對,如要改變,用復合語句。 例輸入兩個實數(shù),按代數(shù)值由小到大次序輸出這兩個數(shù)。 例輸入兩個實數(shù),按代數(shù)值由小到大次序輸出這兩個數(shù)。 void main(void)float a,b,t;/定義變量定義變量coutab;/給變量賦值給變量賦值a:7,b:3if(ab)t=a;a=b;b=t;/交換數(shù)據(jù),用中間變量交換數(shù)據(jù),用中間變量coutb?a:cd?c:d3.三個表達式的類型可不同三個表達式的類型可不同z=ab?A:a+b x=9,y=6,z=5;x=(x+y)%z=x%z+y%z)?1:0;coutx= 對實數(shù)的輸出,也是這樣,一旦指明按科學表示法輸出實數(shù),則接著的輸出均按科學表示法輸出,直到指明以定點數(shù)輸出為止。 明確指定按定語句;)若為若為if();即是一個空判斷。 ();即是一個空判斷。 )相互配對的語句要對齊。 。 表達式1?表達式?表達式2表達式表達式3x+=y+=z;cout(輸出結果輸出結果9執(zhí)行以下程序段后,變量執(zhí)行以下程序段后,變量a,b,c的值分別是int x=10,y=9;int a,b,c;a=(-x=y+)?-x:+y;b=x+;c=y;輸出結果輸出結果x=8y=10a=8void main(void)int a=5,b=1,c=0;if(a=b+c)cout“*n”;else cout“$n”;輸出結果輸出結果*switch語句語句P69switch(grade)caseAcout“10085n”;caseBcout“8470n”;caseCcout“6960n”;caseDcout“no passn”;defaultcout“errorn”;如果如果grade為為A,則結果為則結果為1008584706960no passerror注意注意 1、switch與與if不同,它僅能判斷一種邏輯關系,即表達式是否等于指定的常量,而不同,它僅能判斷一種邏輯關系,即表達式是否等于指定的常量,而if可以計算并判斷各種表達式。 以計算并判斷各種表達式。 2、case子句后必須為常量,常常是整型和字符型。 子句后必須為常量,常常是整型和字符型。 3、default可以省略,這時,不滿足條件什么也不執(zhí)行。 可以省略,這時,不滿足條件什么也不執(zhí)行。 4、case和和default只起標號的作用,順序可以顛倒,顛倒時注意后面的只起標號的作用,順序可以顛倒,顛倒時注意后面的break語句。 5、多個、多個case語句可以共用一組程序。 語句可以共用一組程序。 caseA:caseB:caseC:couty?x+:y+) case1:b+;break;case2:a+;b+;break;case3:a+;b+;cout“a=“ 1、循環(huán)體如果為一個以上的語句,用、循環(huán)體如果為一個以上的語句,用括起。 2、循環(huán)體內或表達式中必須有使循環(huán)結束的條件,即一定有一個循環(huán)變量。 、循環(huán)體內或表達式中必須有使循環(huán)結束的條件,即一定有一個循環(huán)變量。 3、while表達式可以成為語句,要特別小心。 表達式可以成為語句,要特別小心。 void main(void)int y=10;while(y-);cout“y=” 當?shù)谝淮窝h(huán)表達式的值為真時,式的值為真時,while與與dowhile的結果完全一樣,否則結果不相同。 的結果完全一樣,否則結果不相同。 s=7;do s-=2;while(s=0);cout“s=” 1、當型循環(huán),條件測試是在循環(huán)開始時進行,有可能一次也進入不了循環(huán)體。 、當型循環(huán),條件測試是在循環(huán)開始時進行,有可能一次也進入不了循環(huán)體。 2、for語句中的三個表達式可以部分省略或全部省略,語句中的三個表達式可以部分省略或全部省略,但;不能省略,若省略表達式但;不能省略,若省略表達式2,則表示循環(huán)條件為真。 ,則表示循環(huán)條件為真。 3、for語句中三個表達式可以是任何有效的語句中三個表達式可以是任何有效的C語言表達式。 void main(void)char i,j;for(i=a,j=z;i 1、循環(huán)體內有多個語句要用括起來。 、循環(huán)體內有多個語句要用括起來。 括起。 首先執(zhí)行循環(huán)體,然后再判斷表達式,至少執(zhí)行一次循環(huán)體。 當?shù)谝淮窝h(huán)表達語言表達式。 2、書寫格式要清晰。 、書寫格式要清晰。 break語句和語句和continue語句break只能退出一層循環(huán)或只能退出一層循環(huán)或switch語句。 a=10;y=0;doa+=2;y+=a;cout“a=“50)break;while(a=14);第一次第一次a=12y=12第三次第三次a=16y=44continue其作用為結束本次循環(huán)其作用為結束本次循環(huán)void main(void)int i;for(i=1;i=5;i+)if(i%2)cout“*”;else continue;cout“#”;cout“$n”;輸出輸出*#*#*#$在循環(huán)體中,在循環(huán)體中,break從循環(huán)體內跳出循環(huán)體,提前結束循環(huán)。 從循環(huán)體內跳出循環(huán)體,提前結束循環(huán)。 continue其作用為結束本次循環(huán),即跳過循環(huán)體中下面尚未執(zhí)行的語句,接著進行下一次是否執(zhí)行循環(huán)的判定。 是否執(zhí)行循環(huán)的判定。 求素數(shù)只可以被求素數(shù)只可以被1與自身整除的數(shù)。 與自身整除的數(shù)。 判斷一個數(shù)判斷一個數(shù)t是否為素數(shù),用是否為素數(shù),用2到到t-1循環(huán)除。 循環(huán)除。 for(i=2;i 是素數(shù)。 n”;else cout“不是素數(shù)不是素數(shù)n”;進一步,由于進一步,由于t不可能被大于不可能被大于t/2的數(shù)整除,所以可將循環(huán)次數(shù)降低。 的數(shù)整除,所以可將循環(huán)次數(shù)降低。 第四章第四章函數(shù)與編譯預處理函數(shù)與編譯預處理函數(shù)是函數(shù)是C+的基本模塊的基本模塊為什么要使用函數(shù)?為什么要使用函數(shù)? 1、避免重復的編程。 、避免重復的編程。 2、使程序更加模塊化,便于閱讀、修改。 、使程序更加模塊化,便于閱讀、修改。 所編寫的函數(shù)應盡量少與主調函數(shù)發(fā)生聯(lián)系,這樣便于移植。 所編寫的函數(shù)應盡量少與主調函數(shù)發(fā)生聯(lián)系,這樣便于移植。 1、一個源程序文件由一個或多個函數(shù)組成,編譯程序以文件而不是以函數(shù)為單位進行編譯的。 的。 2、一個程序可以由多個源文件組成,可以分別編譯,統(tǒng)一執(zhí)行。 、一個程序可以由多個源文件組成,可以分別編譯,統(tǒng)一執(zhí)行。 3、一個程序必須有且只有一個、一個程序必須有且只有一個main()函數(shù),函數(shù),C+從 4、C+語言中,所有函數(shù)都是平行獨立的,無主次、相互包含之分。 函數(shù)可以嵌套調用,語言中,所有函數(shù)都是平行獨立的,無主次、相互包含之分。 函數(shù)可以嵌套調用,語句P79語句。 第二次第二次a=16y=28第四次第四次a=16y=60其作用為結束本次循環(huán),即跳過循環(huán)體中下面尚未執(zhí)行的語句,接著進行下一次、一個源程序文件由一個或多個函數(shù)組成,編譯程序以文件而不是以函數(shù)為單位進行編譯從main()函數(shù)開始執(zhí)行。 函數(shù)開始執(zhí)行。 不可嵌套定義。 不可嵌套定義。 5、從使用角度來說,分標準函數(shù)和用戶自定義函數(shù);從形式來說,分無參函數(shù)和有參函數(shù)。 、從使用角度來說,分標準函數(shù)和用戶自定義函數(shù);從形式來說,分無參函數(shù)和有參函數(shù)。 庫函數(shù)是庫函數(shù)是C+編譯系統(tǒng)已預定義的函數(shù)編譯系統(tǒng)已預定義的函數(shù)用戶在程序中,根據(jù)應用的需要,由用戶自己定義函數(shù),這類函數(shù)稱為用戶自定義的函數(shù)。 用戶在程序中,根據(jù)應用的需要,由用戶自己定義函數(shù),這類函數(shù)稱為用戶自定義的函數(shù)。 根據(jù)定義函數(shù)或調用時是否要給出參數(shù),又可將函數(shù)分為無參函數(shù)和有參函數(shù)。 根據(jù)定義函數(shù)或調用時是否要給出參數(shù),又可將函數(shù)分為無參函數(shù)和有參函數(shù)。 函數(shù)定義的一般形式函數(shù)定義的一般形式 一、無參函數(shù) 一、無參函數(shù)主調函數(shù)并不將數(shù)據(jù)傳給被調函數(shù)。 主調函數(shù)并不將數(shù)據(jù)傳給被調函數(shù)。 無參函數(shù)主要用于完成某一操作。 無參函數(shù)主要用于完成某一操作。 二、有參函數(shù) 二、有參函數(shù)主調函數(shù)和被調函數(shù)之間有數(shù)據(jù)傳遞。 主調函數(shù)可以將參數(shù)傳遞給被調函數(shù),被調函數(shù)中的結果也可以帶回主調函數(shù)。 的結果也可以帶回主調函數(shù)。 函數(shù)參數(shù)和函數(shù)的值函數(shù)參數(shù)和函數(shù)的值形參是被調函數(shù)中的變量;實參是主調函數(shù)賦給被調函數(shù)的特定值。 實參可以是常量、變量或復雜的表達式,不管是哪種情況,在調用時實參必須是一個確定的值。 量或復雜的表達式,不管是哪種情況,在調用時實參必須是一個確定的值。 形參與實參類型相同,一一對應。 形參與實參類型相同,一一對應。 形參必須要定義類型,因為在定義被調函數(shù)時,不知道具體要操作什么數(shù),而定義的是要操作什么類型的數(shù)。 操作什么類型的數(shù)。 1、在未出現(xiàn)函數(shù)調用時,形參并不占內存的存儲單元,只有在函數(shù)開始調用時,形參才被分配內存單元。 調用結束后,形參所占用的內存單元被釋放。 分配內存單元。 調用結束后,形參所占用的內存單元被釋放。 2、實參對形參變量的傳遞是、實參對形參變量的傳遞是“值傳遞值傳遞”,即單向傳遞。 在內存中實參、形參分占不同的單元。 ,即單向傳遞。 在內存中實參、形參分占不同的單元。 3、形參只作用于被調函數(shù),可以在別的函數(shù)中使用相同的變量名。 、形參只作用于被調函數(shù),可以在別的函數(shù)中使用相同的變量名。 void fun(int x,int y)x=x*10;y=y+x;couty)?x:y;return z;void main(void)float a,b,c;cinab;c=max(a+b,a*b);實參傳遞的是一個具體的值,不必說明參數(shù)類型實參傳遞的是一個具體的值,不必說明參數(shù)類型cout“The maxis”ab;c=max(a,b);cout“The maxis”y)?x:y;return z;void main(void)int x=2,y=3,z=0;void add(int,int,int);cout“ (1)x=“ 語句,哪一個語句起作用。 既然函數(shù)有返回值,這個值當然應屬于某一個確定的類型,應當在定義函數(shù)時指定函數(shù)值表達式中的類型不一致,則以函數(shù)的類型為準。 函數(shù)的類型決定如果使用用戶自己定義的函數(shù),而該函數(shù)與調用它的函數(shù)(即主調函數(shù))在

溫馨提示

  • 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

提交評論