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

正文內(nèi)容

c語(yǔ)言程序設(shè)計(jì)第8章(留存版)

  

【正文】 0,dataerror!”)。 int a[10],b[10],i,n=0,m=0,k=0。 else k=k+1。in。 for (i=0。 for(i=0。} } } void main( ) { int a[10],i。 } main() {printf(%ld\n, fun(3))。 } 如果輸入 an anple,該程序的輸出結(jié)果是( )。 …… } 變量 a,b,c有效 變量 x,y,i,j有效 變量 m,n有效 下列變量是局部變量: 在一個(gè)函數(shù)內(nèi)部定義的變量 函數(shù)的形式參數(shù) 在某個(gè)復(fù)合語(yǔ)句中定義的變量 說(shuō)明: ( 1) 主函數(shù) main中定義的變量(如 m,n)也只在主函數(shù)中有效, 而不因?yàn)樵谥骱瘮?shù)中定 義而在整個(gè)文件成程序中有效,這是和 Pascal不同的。 int p=1,q=5。i<10 。 max (int a,int b) { int c。 靜態(tài)存儲(chǔ)方式: 在程序編譯時(shí)分配固定的存儲(chǔ)空間的方式 動(dòng)態(tài)存儲(chǔ)方式: 在函數(shù)調(diào)用的時(shí)候動(dòng)態(tài)分配存儲(chǔ)空間的方式 。 用 static聲明局部變量 有時(shí)希望函數(shù)中的局部變量的值在 函數(shù)調(diào)用結(jié)束后不消失而保留原值 ,即其占用的存儲(chǔ)單元不釋放,在下一次該函數(shù)調(diào)用時(shí),該變量已有值,就是上一次函數(shù)調(diào)用結(jié)束時(shí)的值。一般在以下情況下使用局部靜態(tài)變量: ( 1) 需要保留函數(shù)上一次調(diào)用結(jié)束時(shí)的值。 printf(%d , d)。x=y。經(jīng)過(guò)運(yùn)算器進(jìn)行運(yùn)算,如果需要存數(shù),再?gòu)倪\(yùn)算器將數(shù)據(jù)送到內(nèi)存存放。 用 extern聲明外部變量 外部變量(即全局變量) 是在函數(shù)的外部定義的,它的作用域?yàn)閺?變量的定義處開(kāi)始,到本程序文件的未尾。 scanf(“%d,%d”,amp。如果找不到,按出錯(cuò)處理。在定義內(nèi)部函數(shù)時(shí),在函數(shù)名和函數(shù)類(lèi)型的前面加 static。i++) y=y*A。 文件 : int A。i++) printf(“%d!=%d\n”,i,fac(i))。a[0],amp。 printf(“%d %d”,a,b)。 } 1!=1 2!=2 3!=6 4!=24 5!=120 例:以下程序的輸出結(jié)果是( )。 } 運(yùn)行結(jié)果為: 7 8 9 說(shuō)明: 1) 靜態(tài)局部變量屬于靜態(tài)存儲(chǔ)類(lèi)別,在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元,在程序整個(gè)運(yùn)行期間都不釋放; 2) 對(duì) 靜態(tài)局部變量 是在 編譯時(shí)賦初值 的,在程序運(yùn)行時(shí)它已有初值,以后每次調(diào)用函數(shù)時(shí)不再重新賦初值而只是保留上次函數(shù)調(diào)用結(jié)束時(shí)的值。 寄存器( register) 外部( extern) auto變量 函數(shù)中的局部變量,如不專(zhuān)門(mén)聲明為 static存儲(chǔ)類(lèi)別,都是動(dòng)態(tài)地分配存儲(chǔ)空間的, 數(shù)據(jù)存儲(chǔ)在動(dòng)態(tài)存儲(chǔ)區(qū)中在函數(shù)調(diào)用結(jié)束時(shí)就自動(dòng)釋放這些存儲(chǔ)空間,因此 這類(lèi)局部變量稱(chēng)為 自動(dòng)變量 。 d+=a++。 } aver= sum/ 10。 void main() { float average (float array [ ],int n)。 …… } …… } 局部?jī)?yōu)先 c有效 全局變量 程序的編譯單位是源程序文件,一個(gè)源文件可以包含一個(gè)或若干個(gè)函數(shù)。 } 實(shí)參與形參的小結(jié) 實(shí)參 形參 傳遞方式 常量、變量、表達(dá)式 數(shù)組元素 變量 傳值(單向) 數(shù)組名 數(shù)組名 傳數(shù)組首地址 局部變量和全局變量 局部變量 在一個(gè)函數(shù)內(nèi)部定義的變量是內(nèi)部變量,只在本函數(shù)范圍內(nèi)有效,在此函數(shù)之外是不能使用這些變量,成為 局部變量 。 } } main( ) {char str[100]。 long fun( int n) {long s。jn。 return(aver)。i10。 5) 數(shù)組名作函數(shù)實(shí)參,不是值傳遞而是 地址傳遞 ,實(shí)參和形參數(shù)組將共占用同一段內(nèi)存單元 .如果形參數(shù)組中各元素發(fā)生變化會(huì)使實(shí)參數(shù)組元素的值同時(shí)發(fā)生變化。 printf(“\n”)。 例 有兩個(gè)數(shù)組 a, b,各有 10個(gè)元素,將它們對(duì)應(yīng)地逐個(gè)相比。 } main ( ) /*主函數(shù) */ { printf(“%d”,age(5)) } 遞歸結(jié)束條件 遞歸公式 遞歸函數(shù)編寫(xiě)總結(jié): 1) 采用 if語(yǔ)句格式; 2)兩要素: 遞歸結(jié)束條件 遞歸公式 3)一般形式 if(遞歸結(jié)束條件 ) else 遞歸公式 4)遞歸公式中包含遞歸函數(shù)名,但參數(shù)不同 5)if語(yǔ)言前的語(yǔ)句在遞歸進(jìn)入時(shí)執(zhí)行, if語(yǔ)句后的語(yǔ)句在遞歸返回時(shí)執(zhí)行 例 n! 遞推法: 從 1開(kāi)始,乘 2,乘 3, …… 一直乘到 n。 開(kāi)始 調(diào)用 f2函數(shù) 開(kāi)始 調(diào)用 f1函數(shù) f1 函數(shù) f2 函數(shù) 例 有 5個(gè)人坐在一起,問(wèn)第 5個(gè)人多少歲?他說(shuō)比第 4個(gè)人大 2歲。如果 f(x1)與 f(x2)同符號(hào) ,則應(yīng)改變 x1,x2,直到f(x1)、 f(x2)異號(hào)為止。 scanf(“%d%d”,amp。 對(duì)被調(diào)用函數(shù)的聲明和函數(shù)原型 例:編寫(xiě)求 的程序 分析: 重復(fù)三次求階乘運(yùn)運(yùn)算, 只是每次的值不同。 函數(shù)原型的一般形式為: (1)函數(shù)類(lèi)型 函數(shù)名(參數(shù)類(lèi)型 1,參數(shù)類(lèi)型 2……) (2)函數(shù)類(lèi)型 函數(shù)名(參數(shù)類(lèi)型 1 參數(shù)名 1,參數(shù)類(lèi)型 2 參數(shù)名 2……) 編譯系統(tǒng)不檢查參數(shù)名 。 } 例如(使用庫(kù)函數(shù)) include include void main( ) { float x,y。 這種不要求函數(shù)帶回值 ,只要求函數(shù) 完成一定的操作 。 return c。 (2)如果實(shí)參表列多個(gè)實(shí)參 ,則各參數(shù)間用 逗號(hào)隔開(kāi)。 printf(“Max is %d”,c)} 函數(shù)的返回值 通常 ,希望通過(guò)函數(shù)調(diào)用使主調(diào)函數(shù)得到一個(gè)確定的值 ,這就是函數(shù)的返回值 . 說(shuō)明 : (1)函數(shù)的返回值是通過(guò)函數(shù)中的return語(yǔ)句 獲得的 . (2)一個(gè)函數(shù)中可以有 一個(gè)以上 的return語(yǔ)句,但不論執(zhí)行到哪個(gè)return都將結(jié)束函數(shù)調(diào)用返回主調(diào)函數(shù) 。函數(shù)的返回值是通過(guò)函數(shù)中的 return語(yǔ)句 獲得的 . int max( int x, int y) { int z。a,amp。 (2)在被定義的函數(shù)中 ,必須指定形參的類(lèi)型,只能是變量或數(shù)組 (3)實(shí)參可以是常量 ,變量或表達(dá)式 ,如 :max(3,a+b). 但要求它們有 確定的值 .在調(diào)用時(shí)將實(shí)參的值賦給形參 . (4)實(shí)參和形參的 類(lèi)型應(yīng)相同或賦值兼容 ,否則會(huì)出錯(cuò) 。 return(z)。 } 例如: void printhello(char name[ ]) { printf(“Hello ,%s\n”, name)。 2)C程序的執(zhí)行 從 main函數(shù)開(kāi)始 , 調(diào)用其他函數(shù)后仍回到main函數(shù),程序在 main函數(shù)結(jié)束時(shí)結(jié)束 3)所有子函數(shù)都是平行的,任何子函數(shù)都不屬于其它函數(shù) ************ How do you do! ************ 函數(shù)的分類(lèi) : 1)從 用戶(hù)使用的角度 函數(shù)可分為 : 標(biāo)準(zhǔn)函數(shù) ,即 庫(kù)函數(shù) .由系統(tǒng)提供 ,用戶(hù)不必定義 ,直接使用 。 ,如何調(diào)試最方便 ? : 其中 m, n為正整數(shù),且 mn 該如何設(shè)計(jì)程序最有效 )!(!!nmnm?第 8章 函 數(shù) 本章學(xué)習(xí)要點(diǎn) : ? 掌握函數(shù)的定義方法 。 用戶(hù)自定義函數(shù) .由用戶(hù)根據(jù)需要 ,自行編寫(xiě) ,以解決專(zhuān)門(mén)需要 。 } 一般情況下,函數(shù)體由兩部分組成: {[局部變量說(shuō)明 ] 語(yǔ)句 } 局部變量: 函數(shù)體內(nèi)定義的變量。 } 主調(diào)函數(shù) 被調(diào)用函數(shù) Z 各函數(shù)信息往來(lái)是由 參數(shù)傳遞和 返回語(yǔ)句 實(shí)現(xiàn) 函數(shù)參數(shù)和函數(shù)的值 形式參數(shù)和實(shí)際參數(shù) 函數(shù)參數(shù):用于函數(shù)間數(shù)據(jù)傳遞 形式參數(shù)(形參): 函數(shù)定義時(shí)設(shè)定的參數(shù)。字符型和整形可以相互匹配。b)。 z=xy?x:y。 (3)return語(yǔ)句后的括弧可以不要 。 實(shí)參與形參的 個(gè)數(shù)應(yīng)相等 ,類(lèi)型應(yīng)一致 。 } void main() { int i=2,p。 函數(shù)出現(xiàn)在一個(gè)表達(dá)式中 ,這種表達(dá)式稱(chēng)為函數(shù)表達(dá)式 ,這是要求函數(shù) 帶回一個(gè)確定的值 參加表達(dá)式的運(yùn)算 .例如 : m=max(a,b)。 scanf(?% f,amp。函數(shù)聲明可以寫(xiě)成: float add(float a,float b)。 將求階乘的過(guò)程編成一個(gè) 函數(shù) fac,以不同的參數(shù)值 k 來(lái)調(diào)用函數(shù) )!(!!mnmnC mn ??fac k k! include include float fac(int k) { float t=1。m,amp。注意 xx2的值不應(yīng)差太大 ,以保證(x1,x2)區(qū)間內(nèi)只有一個(gè)根。問(wèn)第 4個(gè)人歲數(shù),他說(shuō)比第 3個(gè)人大 2歲。其基本 原理是從一個(gè)已知事實(shí)推出下一個(gè)事實(shí)。如果 a數(shù)組中的元素大于 b數(shù)組中的相應(yīng)元素的數(shù)目多于 b數(shù)組中元素中大于 a數(shù)組中相應(yīng)元素的數(shù)目,則認(rèn)為 a數(shù)組大于 b數(shù)組,并分別統(tǒng)計(jì)出兩個(gè)數(shù)組相應(yīng)元素大于、等于、小于的次數(shù)。 for(i=0。 include int max( int x[ ],int n) { int i,m。i++) if(mx[i]) m=x[i]。 } main( ) { float score[10],aver。j++) if(array[j]array[i]) {t=array[j]。 if(n= =1 || n= =2) s=2。 scanf(“%s”, str)。 float f1(int a) { int b,c。 在函數(shù)內(nèi)定義的變量是局部變量,而 在函數(shù)之外定義的變量稱(chēng)為外部變量 , 外部變量是 全 局變量 (也稱(chēng)全程變量) 。 float ave, score[10]。 return( aver) 。 printf(“%d\n”, d)。自動(dòng)變量用關(guān)鍵字 auto作存儲(chǔ)類(lèi)別的聲明。 自動(dòng)變量賦初值 ,不是在編譯時(shí)進(jìn)行,而是 在函數(shù)調(diào)用時(shí)進(jìn)行 ,每調(diào)用一次函數(shù)重新給一次初值,相當(dāng)于執(zhí)行一次賦值語(yǔ)句; 3) 如在定義局部變量時(shí)不賦初值的話(huà),對(duì) 靜態(tài)局部變量 ,編譯時(shí)自動(dòng)賦初值 0(對(duì)數(shù)值型變量 )或 空字符 (對(duì)字符變量 )。 int d=1。 } 方法 2: include int x,y。a[1]) swap(a)。 } 說(shuō)明: 1)) 只有 局部自動(dòng)變量 和 形式參數(shù) 可以作為寄存器變量,其他(如全局變量)不行。 /*定義外部變量 */ main( ) { input power(int)。 return(y)。即 s
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1