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

正文內(nèi)容

清華《c語言程序設(shè)計》4函數(shù)ppt-文庫吧

2025-01-05 08:18 本頁面


【正文】 ,b); printf("Max is %d\n",c); } int max( float x, float y) { float z; /* z為實型變量 */ z=x>y?x ∶ y; return(z); } 運行情況如下: 1.5, 2.5 ↙ Max is 2 C語言程序設(shè)計 33 三、 函數(shù)參數(shù) 形式參數(shù)和實際參數(shù) 形式參數(shù): 函數(shù)名后面括號中的變量名稱為“ 形式參數(shù) ” (簡稱 “ 形參 ” )。 實際參數(shù): 主調(diào)函數(shù)中調(diào)用一個函數(shù)時,函數(shù)名后面括號中的參數(shù) (可以是一個表達(dá)式 )稱為 “ 實際參數(shù) ” (簡稱 “ 實參 ” )。 C語言程序設(shè)計 34 主調(diào)函數(shù)和被調(diào)用函數(shù)之間有數(shù)據(jù)傳遞的關(guān)系。在不同的函數(shù)之間傳遞數(shù)據(jù),可以使用的方法有: ◆ 參數(shù):通過形式參數(shù)和實際參數(shù) ◆ 返回值:用 return語句返回計算結(jié)果 C語言程序設(shè)計 35 例 include void main ( ) { int max(int x , int y ); /* 對max函數(shù)的聲明 */ int a , b , c; scanf( " % d , % d" , &a , &b ) ; c=max ( a , b ) ; printf( "Max is % d" , c ) ; } C語言程序設(shè)計 36 int max(int x , int y )/ *定義有參函數(shù) max */ { int z; z=x>y ? x ∶ y; return( z ) ; } 運行情況如下: 7,8 ↙ Max is 8 C語言程序設(shè)計 37 c=max(a,b)。 ( main 函數(shù)) ( max 函數(shù)) max(int x, int y) { int z。 z=xy?x:y。 return(z)。 } 例 比較兩個數(shù)并輸出大者 main() { int a,b,c。 scanf(%d,%d,amp。a,amp。b)。 c=max(a,b)。 printf(Max is %d,c)。 } int max(int x, int y) { int z。 z=xy?x:y。 return(z)。 } 形參 實參 C語言程序設(shè)計 38 關(guān)于形參與實參的說明: ( 1) 在定義函數(shù)時指定的形參,而且只能是變量,不能是常量、表達(dá)式等。 在未出現(xiàn)函數(shù)調(diào)用時,它們并不占內(nèi)存中的存儲單元。只有在發(fā)生函數(shù)調(diào)用時,函數(shù) max中的形參才被分配內(nèi)存單元。在調(diào)用結(jié)束后,形參所占的內(nèi)存單元也被釋放。 ( 2) 實參可以是常量、變量或表達(dá)式, 例如: max(3,a+b); 但要求它們有確定的值。在調(diào)用時將實參的值賦給形參。 C語言程序設(shè)計 39 ( 3) 在被定義的函數(shù)中,必須指定形參的類型。 ( 4) 實參與形參的類型應(yīng)相同或賦值兼容。 ( 5) 值傳遞 :實參向形參的數(shù)據(jù)傳遞是單向“值傳遞”,只能由實參傳給形參,而不能由形參傳回來給實參。 在調(diào)用函數(shù)時,給形參分配存儲單元,并將實參對應(yīng)的值傳遞給形參,調(diào)用結(jié)束后,形參單元被釋放,實參單元仍保留并維持原值。 C語言程序設(shè)計 40 (2022年 9月全國計算機(jī)等級考試二級筆試原題 ) C 說明:形參只是在函數(shù)調(diào)用其間存在 。 C語言程序設(shè)計 41 (2022年 9月全國計算機(jī)等級考試二級筆試原題 ) A C語言程序設(shè)計 42 參數(shù)傳遞方式 ? 值傳遞 方式 –方式:函數(shù)調(diào)用時 ,為形參分配單元 ,并將實參的值 復(fù)制 到形參中;調(diào)用結(jié)束,形參單元被釋放,實參單元仍保留并維持原值 –特點: ? 形參與實參占用 不同 的內(nèi)存單元 ? 單向 傳遞 ——實參傳給形參,而不會做相反的事(形參返回繪實參) C語言程序設(shè)計 43 7 11 x: y: 調(diào)用前: 調(diào)用結(jié)束: 7 11 x: y: 例 交換兩個數(shù) include void swap(int a,int b) { int temp。 temp=a。 a=b。 b=temp。 } main() { int x=7,y=11。 printf(x=%d,\ty=%d\n,x,y)。 printf(swapped:\n)。 swap(x,y)。 printf(x=%d,\ty=%d\n,x,y)。 } 調(diào)用: 7 11 a: b: 7 11 x: y: swap: 7 11 x: y: 11 7 a: b: temp C語言程序設(shè)計 44 ?地址傳遞 – 方式:函數(shù)調(diào)用時,將數(shù)據(jù)的 存儲地址 作為參數(shù)傳遞給形參 – 特點: ? 形參與實參占用 同樣 的存儲單元 ? “雙向” 傳遞 ? 形參必須是 地址 變量,而實參可以是 地址 常量、變量或地址表達(dá)式。 – 方法有兩種 ? 指針作函數(shù)的參數(shù) ? 數(shù)組作函數(shù)的參數(shù) C語言程序設(shè)計 45 ( 1) 指針作函數(shù)的參數(shù) 作用: 1)用指針(地址)作函數(shù)參數(shù),可以實現(xiàn)“通過被調(diào)用的函數(shù)改變主調(diào)函數(shù)中變量的值”的目的。 2)使用指針作為函數(shù)參數(shù)可以在調(diào)用一個函數(shù)時得到多 個由被調(diào)函數(shù)改變了的值。即通過函數(shù)可以得到多個須要的值。 C語言程序設(shè)計 46 void swap(p1,p2) int *p1,*p2。 { int p。 p=*p1。 *p1=*p2。 *p2=p。 } main() { int a,b。 scanf(%d,%d,amp。a,amp。b)。 printf(―a=%d,b=%d\n‖,a,b)。 printf(―swapped:\n‖)。 swap(amp。a,amp。b)。 printf(‖a=%d,b=%d\n,a,b)。 } 例 交換兩個數(shù) a 5 9 b 調(diào)前: a 5 9 b 調(diào) swap: p1 amp。a amp。b p2 a 9 5 b 交換: p1 amp。a amp。b p2 a 9 5 b 返回: C語言程序設(shè)計 47 例如:有一數(shù)組有 10個元素,要求輸出其中最大和最小的元素值。 define N 10 main ( ) { void max_min(int arr[ ], int *pt1, int *pt2,int n)。 int array[N]={1,8,10,2,5,0,7,15,4,5},*p1,*p2,a,b。 p1=amp。a。p2=amp。b。 max_min(array,p1,p2,N)。 printf(―max=%d,min=%d‖,a,b)。 } void max_min(int arr[ ],int *pt1,int *pt2,int n) { int I。 *pt1=*pt2=arr[0]。 for(I=1。In。I++) { if(arr[I]*pt1) *pt1=arr[I]。 if(arr[I]*pt2) *pt2=arr[I]。 } } p1 a pt1 p2 b pt2 C語言程序設(shè)計 48 以下程序的輸出結(jié)果是 【 11】 include void swap(int *a,int *b) { int *t。 t=a。 a=b。 b=t。 } main() { int i=3,j=5,*p=amp。i,*q=amp。j。 swap(p,q)。 printf(―%d %d\n‖,*p,*q)。 } (2022年 4月全國計算機(jī)等級考試二級筆試原題 ) C語言程序設(shè)計 49 (2022年 9月全國計算機(jī)等級考試二級筆試原題 ) A C語言程序設(shè)計 50 四、對被調(diào)用函數(shù)的聲明和函數(shù)原型 (是庫函數(shù)或用戶自己定義的函數(shù))。但光有這一條件還不夠。 注意:程序編譯器的編譯過程是按書定的順序進(jìn)行的 , 即從上到下 , 從左到右的順序 。 C語言程序設(shè)計 51 ,而該函數(shù)的位置在調(diào)用它的函數(shù)(即主調(diào)函數(shù))的后面,應(yīng)該 在主調(diào)函數(shù)中或者在所有函數(shù)之外 對被調(diào)用的函數(shù)作聲明。 ,還應(yīng)該在本文件開頭用 include 命令將調(diào)用有關(guān)庫函數(shù)時所需用到的信息“包含”到本文件中來。 C語言程序設(shè)計 52 函數(shù)原型的一般形式為 : 1. 函數(shù)類型 函數(shù)名 (參數(shù)類型 1,參數(shù)類型 2??) ; 2. 函數(shù)類型 函數(shù)名 (參數(shù)類型 1,參數(shù)名 1,參數(shù)類型 2,參數(shù)名 2??) ; 聲明的作用是把 函數(shù)名、函數(shù)參數(shù)的個數(shù)和參數(shù)類型等信息通知編譯系統(tǒng) ,以便在遇到函數(shù)調(diào)用時,編譯系統(tǒng)能正確識別函數(shù)并檢查調(diào)用是否合法。 C語言程序設(shè)計 53 注意: 函數(shù)的 “ 定義 ” 和 “ 聲明 ” 的區(qū)別: ? 函數(shù)的定義是指對函數(shù)功能的確立,包括指定函數(shù)名,函數(shù)值類型、形參及其類型、函數(shù)體等,它是一個完整的、獨立的函數(shù)單位。 ? 函數(shù)的聲明的作用則是把函數(shù)的名字、函數(shù)類型以及形參的類型、個數(shù)和順序通知編譯系統(tǒng),以便在調(diào)用該函數(shù)時系統(tǒng)按此進(jìn)行對照檢查。 C語言程序設(shè)計 54 (2022年 9月全國計算機(jī)等級考試二級筆試原題 ) f unc() m++ C語言程序設(shè)計 55 例 對被調(diào)用的函數(shù)作聲明 include void main() { float add( float x, float y); / *對被調(diào)用函數(shù) add的聲明 */ float a, b, c; scanf("% f,% f",& a,& b); c= add( a, b) 。 printf(" sum is % f \n", c); } float add( float x, float y) / *函數(shù)首部 */ { float z; /* 函數(shù)體 */ z=x+y; return( z); } C語言程序設(shè)計 56 例 6. 6 對被調(diào)用的函數(shù)作聲 明 include float add( float x, float y) / *函數(shù)首部 */ { float z; /* 函數(shù)體 */ z=x+y; return( z); } void main() { float a, b, c; scanf("% f,% f",& a,& b); c= add( a, b) 。 printf(" sum is % f \n", c); } C語言程序設(shè)計 57 函數(shù)的嵌套調(diào)用與遞歸調(diào)用(提前講) 嵌套定義就是在定義一個函數(shù)時,其函數(shù)體內(nèi)又包含另一個函數(shù)的完整定義 。 嵌套調(diào)用 C語言程序設(shè)計 58 例 用弦截法求方程 f(x)=x35x2+16x80=0 的根 C語言程序設(shè)計 59 1. 取兩個不同點 x1,x2,如果 f(x1)和 f(x2)符號相反 ,則 (x1,x2)區(qū)間內(nèi)必有一個根。如果 f(x1)與 f(x2)同符號 ,則應(yīng)改變 x1,x2,直到 f(x1)、 f(x2)異號為止。注意 x x2的值不應(yīng)差太大 ,以保證 (x1,x2)區(qū)間內(nèi)只有一個根。 2. 連接 (x1,f(x1))和 (x2,f(x2))兩點 ,此線 (即弦 )交 x軸于 x。 方法: C語言程序設(shè)計 60 3. 若 f(x)與 f(x1)同符號 ,則根必在 (x,x2)區(qū)間內(nèi) ,此時將 x作為新的 x1。如果 f(x)與 f(x2)同符號 ,則表示根在 (x1,x)區(qū)間內(nèi) ,將 x作為新的 x2。 4. 重復(fù)步驟 (2) 和 (3) ,
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1