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

正文內(nèi)容

c語言程序設(shè)計(jì)第8章-免費(fèi)閱讀

  

【正文】 根據(jù) 函數(shù)能否被其他源文件調(diào)用 ,將函數(shù)區(qū)分為 內(nèi)部函數(shù)和 外部函數(shù) 。這時(shí)可以在定義外部變量時(shí)加一個(gè) static聲明。 for(i=1。m)。正確的做法是: 在任一個(gè)文件中定義該變量,而在另一文件中用 extern對(duì)該變量作“外部變量聲明” 在編譯和連接時(shí)系統(tǒng)會(huì)由此知道此變量是一個(gè)已在別處定義的外部變量,井將在另一文件中定義的外部變量的作用域擴(kuò)展到本文件 ,在本文件中可以合法地引用外部變量。編譯時(shí),將外部變量分配在靜態(tài)存儲(chǔ)區(qū)。 for(i=1。為了提高執(zhí)行效率, C語言允許將局部變量的值放在 CPU中的寄存器中 。 } void main( ) { int a[2]。 } void main( ) { scanf(“%d % d”,amp。a,amp。 } main( ) { int a=3。 f=f *n 。 但是應(yīng)該看到,用靜態(tài)存儲(chǔ)要多占內(nèi)存,而且降低了程序的可讀性,當(dāng)調(diào)用次數(shù)多時(shí)往往弄不清靜態(tài)局部變量的當(dāng)前值是什么。i3。進(jìn)行聲明。在 函數(shù)調(diào)用 開始時(shí)分配動(dòng)態(tài)存儲(chǔ)空間,函數(shù)結(jié)束 時(shí)釋放這些空間。這個(gè)存儲(chǔ)空用戶區(qū)間。 } main( ) {int a=3。 return(c)。 else if( array[i]< Min) Min= array[i]。 ave= average(score ,10) 。 寫一個(gè)函數(shù) ,求出平均分、最高分和最低分。 …… } char c1,c2。 …… { int c。 ( 2) 不同函數(shù)中可以使用相同名字的變量 ,它們代表不同的對(duì)象,互不干擾。 } void main( ) { int a[3][4]={{1,3,5,7},{2,4,6,8},{15,13,17,5}}。 例:有一個(gè) 3 4的矩陣,求最大元素的值 include int max( int x[ ][4]) { int i , j , m。 str[i]=str[j1]。 1)數(shù)組名可作函數(shù)參數(shù),此時(shí) 實(shí)參與形參都應(yīng)用數(shù)組名 。 printf(\n)。i10。in1。i++) scanf(“%f”,amp。i++) sum=sum+array[i]。i++) scanf(“%d”,amp。 m=x[0]。 } main() { int a[10],i。 } 輸入數(shù)組 a和數(shù)組 b的數(shù)據(jù) 調(diào)用 large函數(shù)進(jìn)行數(shù)組元素比較 large函數(shù),返回比較結(jié)果 數(shù)組名可作函數(shù)參數(shù),此時(shí) 實(shí)參與形參都應(yīng)用數(shù)組名 。 if(nk) printf(“array a is larger than array b\n”)。i++) scanf(“%d”,amp。 for(i=0。 printf(“%d!=%”,n,y)。 else f=fac(n1)*n。 else c=age(n1)+2。 顯然,這是一個(gè)遞歸問題。 從圖上可以看到,這兩種遞歸調(diào)用都是 無終止 的自身調(diào)用。 printf(%f,myfunc(f))。 print_message( )。 for (i=2,i=k。 float fac(int )。 int m,n。 在 Turbo C中 ,對(duì)實(shí)參求值的順序是按自右至左順序求值的 . 如果使用用戶自己定義的函數(shù),被調(diào)函數(shù)定義在主調(diào)函數(shù)之后,一般還應(yīng)該在主調(diào)函數(shù)中對(duì)被調(diào)用函數(shù)作聲明 。 函數(shù)參數(shù)和函數(shù)的值 形式參數(shù)和實(shí)際參數(shù) 形式參數(shù)(形參): 函數(shù)定義時(shí)設(shè)定的參數(shù)。 } 函數(shù)原型的形式為: 函數(shù)類型 函數(shù)名(參數(shù)類型 1,參數(shù)類型 2……) 在函數(shù)聲明中可以不寫形參名,而只寫形參的類型。 從此行開始為對(duì)被調(diào)用函數(shù)的定義。x)。 函數(shù)調(diào)用的執(zhí)行過程 ① 按從左向右的順序,計(jì)算實(shí)參中各表達(dá)式的值 ② 按照位置,將實(shí)參的值一一對(duì)應(yīng)地傳給形參 ③ 執(zhí)行被調(diào)用函數(shù) ④ 當(dāng)遇到 return(表達(dá)式)語句時(shí),計(jì)算表達(dá)式的值,并返回主調(diào)函數(shù)。 printf(“%d”,p)。 在 Turbo C中 ,對(duì)實(shí)參求值的順序是按自右至左順序求值的 . 例:讀程序,寫出結(jié)果 include int f (int a,int b) { int c。 else if(a= =b)c=0。 scanf(“%d,%d”,amp。 b=print_message( )。在定義函數(shù)時(shí)對(duì)函數(shù)值說明的類型一般應(yīng)該和 return語句中的表達(dá)式類型一致 ,如果不一致 ,則 以函數(shù)類型為準(zhǔn) . int max( int x, int y) { return(xy?x:y。b)。b)。 printf(“Sum of %d,%d is %d\n,a,b,c)。 scanf(“%d,%d”,amp。 } main ( ) { int a,b,c。 } main ( ) { int a,b,c。 printf(“Max is %d”,c) } 關(guān)于形參和實(shí)參的說明 (1)函數(shù)調(diào)用前形參不占內(nèi)存。 實(shí)參a,b 形參x,y 運(yùn)行情況如下 : 7,8 Max is 8 例 調(diào)用函數(shù)時(shí)的數(shù)據(jù)傳遞 int max( int x, int y) { int z。 int max( int x, int y) { int z。 z=xy?x:y。 z=xy?x:y。 return(z)。 printstar( )。 概述 函數(shù) :英文名為 Function,直譯為“功能” ,“函數(shù)”的意思 .在 C語言里 ,函數(shù)指的是 實(shí)現(xiàn)一個(gè)特定功能的程序模塊 .它相當(dāng)于其他語言中的子程序 . C語言程序可分為若干個(gè)函數(shù) ( main),其它函數(shù)都都是子函數(shù)。 ? 掌握形式參數(shù)與實(shí)際參數(shù)、參數(shù)傳遞 。 } void print_message( ) { printf(“How do you do!\n”)。 如: printstar( ) 有參函數(shù) .在調(diào)用函數(shù)時(shí) ,在主函數(shù)和被調(diào)用函數(shù)之間有數(shù)據(jù)傳遞 。 } 例如: void printhello(char name[ ]) { printf(“Hello ,%s\n”, name)。 函數(shù)參數(shù)和函數(shù)的值 一個(gè) C程序由若干個(gè)函數(shù)組成, 各函數(shù)調(diào)用時(shí)經(jīng)常需要傳遞一些 數(shù)據(jù)。b)。 實(shí)際參數(shù) ( 實(shí)參 ) : 調(diào)用函數(shù)時(shí)所使用的實(shí)際的參數(shù) 。a,amp。 例 調(diào)用函數(shù)時(shí)的數(shù)據(jù)傳遞 int max( int x, int y) { int z。 printf(“Max is %d”,c) } 又將函數(shù) max作變形會(huì)怎樣? include int max( int b, int a) { int c。 printf(“Max is %d”,c) } 將函數(shù) max作變形會(huì)怎樣? include int max( int x, int y) { x=xy?x : y。 b=a+b return a。 } main ( ) { int a,b,c。 } main ( ) { int a,b,c。和 return(z)。b)。 z=xy?x:y。 (2)如果實(shí)參表列多個(gè)實(shí)參 ,則各參數(shù)間用 逗號(hào)隔開 , 實(shí)參與形參的 個(gè)數(shù)應(yīng)相等 ,類型應(yīng)一致 。 printf(“%d”,p)。 } void main() { int i=2,p,j。 函數(shù)調(diào)用 作為一個(gè)函數(shù)的實(shí)參 .這種調(diào)用的實(shí)質(zhì)也是函數(shù)表達(dá)式調(diào)用的一種 .例如 : m=max(a,max(b,c))。 例如 (先定義后使用 ) include float f(float x) {return 2*x*x+3*x+1)。 y=sin(x*) printf(“sin(%f)=%f”,x,y)。x)。函數(shù)調(diào)用時(shí)函數(shù)名、實(shí)參個(gè)數(shù)應(yīng)與函數(shù)原型一致。 函數(shù)的調(diào)用 函數(shù)調(diào)用的一般形式 函數(shù)調(diào)用的一般形式為 : 函數(shù)名 ( 實(shí)參表列 ) 說明 : (1)如果是調(diào)用無參函數(shù) ,則“ 實(shí)參表列 ” 可以沒有 ,但 括弧不能省略 。 for (i=2,i=k。 } 例:編寫求 的程序 分析: 重復(fù)三次求階乘運(yùn)運(yùn)算, 只是每次的值不同。 c=fac(n)/(fac(m)*fac(mn)) printf(“%.0f”,c)。} void print_message( ) { printf(“How do you do!\n”)。 方法: 例:讀程序,寫出結(jié)果 include float myfabs(float x) { return x0?x:x。 return(2*z)。問第 2個(gè)人,說比 第 1個(gè)人大 2歲。 return(c)。 float fac(int n) { float f。 scanf(“%d”,amp。 main ( ) { int large(int x,int y)。 printf(“enter array b:\n”)。 else if(large(a[i],b[i])==0) m=m+1。 else if (xy) flag=1。 for (i=1。a[i])。 printf(“Enter 10 integer:\n)。 float aver,sum=array[0]。 printf(“input 10 score:\n”)。 } 例 用選擇法對(duì)數(shù)組中 10個(gè)整數(shù)按由小到大排序。array[i]=t。 for(i=0。 return s。 for(i=0, j=strlen(str)。 printf(“%s\n”, str)。j4。 …… } main ( ) { int m,n。 c=a+b。它的有效范圍為 從 定義變量的位置 開始到本源文件結(jié)束 。 為了便于區(qū)別全局變量和局部變量,一般約定全局變量的 第一個(gè)字母用大寫; 2. 建議不在必要時(shí)不要使用全局變量,因?yàn)椋? ① 全局變量在程序的 全部執(zhí)行過程中都占用存儲(chǔ)單元 ,而不是僅在需要時(shí)才開辟單元。 for(i=0 。 for(i =1 。 int a=3,b=5。 fun(int p) {int d=5。 按 變量值生存期 來分:靜態(tài)存儲(chǔ)方式、動(dòng)態(tài)存儲(chǔ)方式。 (未加 static聲明的局部變量)。調(diào)用 該函數(shù),系統(tǒng)給它們分配存儲(chǔ)空間,函數(shù)調(diào)用結(jié)束時(shí)自動(dòng)釋放存儲(chǔ)空間 實(shí)際上,關(guān)鍵字“ auto”可以省略, auto不寫則隱含確定為“自動(dòng)存儲(chǔ)類別” 。 return(a+b+c)。 4) 雖然靜態(tài)局部變量在函數(shù)調(diào)用結(jié)束后仍然存在,但其他函數(shù)是不能引用它的。i<= 5。 d+=p。y=t。 t=x。 t=x[0]。 } register變量 一般情況下, 變量 (包括靜態(tài)存儲(chǔ)方式和動(dòng)態(tài)存儲(chǔ)方式)的值是 存放在內(nèi)存中的 ,當(dāng)程 序中用到哪一個(gè)變量的值時(shí),由控制器發(fā)出指令將內(nèi)存中該變量的值送到運(yùn)算器中。i++) f=f*i。 3) 不同的系統(tǒng)對(duì)寄存器變量的處理方法是不同的,有的系統(tǒng)對(duì)寄存器不良當(dāng)自動(dòng)變量處理,分配內(nèi)存單元,有的系統(tǒng)只允許將 int, char和指針型變量定義為寄存器變量; 當(dāng)今的優(yōu)化編譯系統(tǒng)能夠識(shí)別使用頻繁的變量,從而自動(dòng)地將這些變量放在寄存器中,而不需要
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1