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

正文內(nèi)容

c語言程序設(shè)計(jì)(三)ppt-預(yù)覽頁

2024-12-31 21:49 上一頁面

下一頁面
 

【正文】 TC和VC相同 )對(duì)實(shí)參求值順序是從右到左,即相當(dāng)于 f(2,2),所以程序運(yùn)行結(jié)果為 0。 【 分析 】 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 31 函數(shù)值的返回 函數(shù)值的返回是通過被調(diào)函數(shù)中的 return語句實(shí)現(xiàn)的。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 32 【 說明 】 (1) return語句也可以不帶表達(dá)式部分,如: return。如果兩者不一致,以函數(shù)定義的類型為準(zhǔn),系統(tǒng)將自動(dòng)進(jìn)行類型的轉(zhuǎn)換。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 33 對(duì)被調(diào)函數(shù)的聲明 一個(gè)函數(shù)能被另一個(gè)函數(shù)調(diào)用需要以下幾個(gè)條件: (1)該函數(shù)必須已經(jīng)存在,無論是庫函數(shù)還是用戶自定義函數(shù) (先定義后調(diào)用 )。 即是函數(shù)首部加“ 。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 35 【 解釋 】 函數(shù)定義 是指對(duì)函數(shù)功能的確立,包括指定函數(shù)名、函數(shù)值的類型、形參及其類型、函數(shù)體等。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 36 有幾種情況可以省略對(duì)被調(diào)函數(shù)的聲明: 1. 如果被調(diào)函數(shù)的定義出現(xiàn)在主調(diào)函數(shù)之前,則可以省略聲明。為了程序的安全,建議都加以聲明為好。 scanf(%d,%d,amp。 /*函數(shù)調(diào)用 */ printf(ave=%\n,ave)。 } 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 38 程序運(yùn)行時(shí),若輸入 50,60↙ 運(yùn)行結(jié)果如圖所示 : 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 39 函數(shù)調(diào)用時(shí)的參數(shù)傳遞 函數(shù)的參數(shù)有形參和實(shí)參兩種。 就參數(shù)傳遞而言,函數(shù)調(diào)用有傳值調(diào)用和傳地址調(diào)用兩種。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 41 函數(shù)的傳值調(diào)用 函數(shù)的傳值調(diào)用是指在函數(shù)調(diào)用時(shí)將實(shí)參的數(shù)值傳遞給形參變量。 printf(a=%d,b=%d\n,a,b)。 printf(a=%d,b=%d\n,a,b)。 } 程序運(yùn)行結(jié)果如圖所示 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 43 swap函數(shù)的功能是交換兩個(gè)參數(shù)的值。 for(i=0。 for(i=0。 for(i=0。 } fun (int y) /*函數(shù)定義 */ {printf(%3d,y*=2)。 下面分別就指針、一維數(shù)組、二維數(shù)組和字符串指針作函數(shù)參數(shù)的情況進(jìn)行討論。 void swap(int *p1, int *p2) { int *p。 p2=p。i2。i2)。 【 分析 】 本例 swap函數(shù)的作用是交換形參指針變量 p1和p2的值。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 51 (2)指針作函數(shù)參數(shù)的作用 由于形參指針變量的指向操作可以引起它所指向的主調(diào)函數(shù)變量值的變化,若有多個(gè)指針變量形參,它們分別指向主調(diào)函數(shù)中作為存放運(yùn)算結(jié)果的變量,則可以將被調(diào)函數(shù)中的多個(gè)計(jì)算結(jié)果數(shù)據(jù)傳回主調(diào)函數(shù) (注意以前被調(diào)函數(shù)只能通過函數(shù)值傳回一個(gè)運(yùn)算結(jié)果 )。} main() {int a=4, b=3, c, d。 printf(c=%d, d=%d\n, c, d)。主函數(shù)輸入 10個(gè)整數(shù),調(diào)用 sort函數(shù)對(duì)輸入的數(shù)據(jù)進(jìn)行排序,并在主函數(shù)中輸出。程序如下: 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 54 /* */ include main() { void sort(int *x, int n)。i++) scanf(%d,amp。i10。 for(i=0。j++) if(*(x+i)*(x+j)) /* *(x+i)即 a[i], *(x+i)也可寫成 x[i] */ {t=*(x+i)。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 56 【 說明 】 (1)形參也可以用數(shù)組,即 sort函數(shù)的首部可寫成:void sort(int x[ ], int n) (2)由于形參 x數(shù)組和主函數(shù)的 a數(shù)組都是局部數(shù)組,只在各自所在的函數(shù)起作用,因此,形參數(shù)組也可以與主函數(shù)中的數(shù)組同名, sort函數(shù)的首部可寫成: void sort(int a[], int n),增加了可讀性。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 57 【 例 813】 輸入 N (設(shè)為 10)個(gè)整數(shù),將其中的全部奇數(shù)輸出。 iN。 iN。 input(arr)。元素個(gè)數(shù)由符號(hào)常量 N定義。 c=a[0]。 printf(x[0]=%d,x[1]=%d\n,x[0],x[1])。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 60 【 分析 】 函數(shù) fun的功能是交換數(shù)組中兩個(gè)元素的值。 由于形參是指針變量,其存放的值是可以改變的,例如 【 例 813】 中函數(shù) outputodd的形參 a通過 a++運(yùn)算存放的地址值發(fā)生了改變,實(shí)參數(shù)組名 arr仍然是常量沒有改變。函數(shù)形參既可以用數(shù)組定義也可以用指針變量,實(shí)質(zhì)都是指針變量,可以用與數(shù)組維數(shù)一致的高級(jí)指針變量,例如二維數(shù)組用指向一維數(shù)組的指針變量作形參;也可以用一級(jí)指針變量作形參,這就是將二維數(shù)組當(dāng)成一維數(shù)組訪問。數(shù)組的行數(shù)和列數(shù)可以用數(shù)值形參,也可以用符號(hào)常量傳遞,本例采用后者,程序編寫如下。 /*函數(shù)聲明 */ amin=min(a, amp。 } int min(int (*p)[M], int *pi, int *pj) /*函數(shù)定義 */ {int i,j,mn。i++) for(j=0。*pj=j。 同樣,函數(shù)首部寫成: int min(int **a , int *pi, int *pj)也是錯(cuò)誤的,因?yàn)樗?a定義成普通的整型二級(jí)指針變量,而不是指向整型一維數(shù)組的指針變量。 int min(int *p, int *pi, int *pj)。 /*函數(shù)調(diào)用 */ printf(min=a[%d][%d]=%d\n, mrow, mcol, amin)。iM。*pi=i。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 68 4. 字符串指針作函數(shù)參數(shù) 表 82字符串指針作為函數(shù)參數(shù)的形式 實(shí)際參數(shù) 形式參數(shù) 字符數(shù)組名 字符數(shù)組 字符數(shù)組名 指針變量 指針變量 字符數(shù)組 指針變量 指針變量 字符串常量 字符數(shù)組 字符串常量 指針變量 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 69 【 例 816】 編寫函數(shù) cpystr,用指針方法將字符串 2復(fù)制到字符串 1。)。 cpystr(str1, str2)。 puts(str1)。 程序如下: 函數(shù)的嵌套與遞歸調(diào)用 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 72 main() {double s,sum ()。 } double sum(int m) /*time函數(shù)定義 */ {double s=0, mul()。i++) s=s+mul(i)。j=n。在一個(gè)函數(shù)被調(diào)用的過程中又調(diào)用另一個(gè)函數(shù),這就是函數(shù)的嵌套調(diào)用。 由于主函數(shù)不被別的函數(shù)調(diào)用,自己調(diào)用自己的函數(shù)一定是用戶自定義函數(shù)。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 75 總結(jié)以上,要編 寫遞歸函數(shù)必須有以下兩個(gè)條件: (1) 必須有遞歸調(diào)用的形式,即形式上要能自己調(diào)用自己; (2) 必須有終止遞歸調(diào)用的條件。同樣,要求 (n1)!先求 (n2)!, ...,要求 2!先求 1!。 /*實(shí)現(xiàn)遞歸調(diào)用 */ } main( ) {int m。m)。 } 程序運(yùn)行結(jié)果如圖所示。 【 分析 】 利用輾轉(zhuǎn)相除法求自然數(shù)的最大公約數(shù)是迭代算法,顯然可以用遞歸算法求解。 int x, y, g, lcd。y)。 } int gcd(int a, int b) /*定義遞歸函數(shù) */ { if(a%b==0) return(b)。 【 分析 】 設(shè)級(jí)數(shù)和為 s(n),根據(jù)上式有: 這就包含了遞歸結(jié)束條件和遞歸調(diào)用的形式,程序編寫如下: 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 82 main( ) { int m。m)。 } 程序運(yùn)行結(jié)果如圖所示。 C語言可以通過定義 指向函數(shù)的指針變量 接受函數(shù)指針,然后通過指向函數(shù)的指針變量訪問該函數(shù)(間接訪問)。 用指向函數(shù)的指針變量調(diào)用函數(shù)的方法是: (1) 定義指向函數(shù)的指針變量; (2) 給指針變量賦函數(shù)入口地址(函數(shù)名); (3) 用指向函數(shù)的指針變量調(diào)用該函數(shù),形式為: (*指針變量 )(實(shí)參列表) 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 86 【 例 821】 用指向函數(shù)的指針變量調(diào)用求兩個(gè)數(shù)中最大值的函數(shù)。 /* 定義指向函數(shù)的指針變量,函數(shù)返回整型值 */ funp=maxnum。y)。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 87 指向函數(shù)的指針變量的主要用途: (1)有選擇地執(zhí)行函數(shù)。例如求若干個(gè)一元函數(shù)的定積分,那就需要用指向函數(shù)的指針變量作函數(shù)參數(shù),請(qǐng)看后面的例子。 在對(duì)多個(gè)被積函數(shù)積分時(shí),工作函數(shù)的首部形式為: float integral (double(*funp)(), float a, float b) 其中 funp為指向函數(shù)的指針變量形參,形參 a和 b為積分的下限和上限。 /* 定義工作函數(shù) */ int n, i。 for(i=1。 return(y)。 /* sin為系統(tǒng)庫函數(shù) sin(x)的入口地址 */ s2=integral(cos, , )。 安 慶 師 范 學(xué) 院 計(jì) 算 機(jī) 與 信 息 學(xué) 院 93 注意此處的返回指針的函數(shù)與 函數(shù)的指針變量不同: 指向函數(shù)的指針變量的定義形式為: 類型 (*p)( ); 在沒有形參的情況下,返回指針的函數(shù)定義為: 類型 *p( ){函數(shù)體 } 區(qū)別: (1)形式不同; (2)實(shí)質(zhì)不同,前者“ p”是指針變量名,后者“ p”是函數(shù)名; (3)后者除了函數(shù)首部外還有函數(shù)體。 【 分析 】 由函數(shù)確定整數(shù)與星期名的對(duì)應(yīng)關(guān)系,應(yīng)返回星期名單詞。 /*將指針數(shù)組元素存放的地址值返回 */ } main() {int i。 if(i0) exit(1)。因此, C語言規(guī)定 main函數(shù)也可以有形式參數(shù),而 實(shí)參就是命令行的字符串 。 (3)注意:與一般指針數(shù)組名不同,由于指針數(shù)組argv[]是形參,其名是 二級(jí)指針變量 而不是常量,可以有 argv++、 argv等運(yùn)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1