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

正文內(nèi)容

【c語(yǔ)言課件】第7章函數(shù)20xxnew-資料下載頁(yè)

2025-01-19 09:34本頁(yè)面
  

【正文】 =x[0]。 x[0]=x[1]。 x[1]=z。 } void main() { int a[2]={1,2}。 swap2(a)。 printf(a[0]=%d\na[1]=%d\n,a[0],a[1])。 } 地址傳遞 例 數(shù)組元素與 數(shù)組名 作函數(shù)參數(shù)比較 ***例 ****** 求學(xué)生的平均成績(jī) ***************** *average()為型參數(shù)組 , score()為實(shí)參數(shù)組,存有 10個(gè)學(xué)生成績(jī) * /* transfer the score[] to array[] */ /* array name as a parameter */ float average(array) float array[10]。 { int i。 float aver; float sum=array[0]。 for (i=1。i10。i++) sum=sum+array[i]。 aver=sum/10。 return(aver)。 } main() { float score[10],aver。 int i。 printf(input 10 scores:\n)。 for(i=0。i10。i++) scanf(%f,amp。score[i])。 printf(\n)。 aver=average(score)。 printf(average score is %,aver)。 } 數(shù)組名做函數(shù)實(shí)參,傳遞地址 數(shù)組名作函數(shù)參數(shù),應(yīng)在主調(diào)函數(shù)和被調(diào)函數(shù)分別定義數(shù)組 實(shí)參數(shù)組和形參數(shù)組類(lèi)型應(yīng)該一致 ? 數(shù)組名作函數(shù)參數(shù)說(shuō)明 : 數(shù)組名作函數(shù)參數(shù),應(yīng)該在主調(diào)函數(shù)和被調(diào)用函數(shù)分別定義數(shù)組(形參數(shù)組、實(shí)參數(shù)組)。 實(shí)參數(shù)組和形參數(shù)組類(lèi)型應(yīng)該一致,不一致出錯(cuò)。 實(shí)參數(shù)組和形參數(shù)組大小可以不一致,如果要求形參數(shù)組得到實(shí)參數(shù)組全部的元素值,則應(yīng)當(dāng)指定形參數(shù)組和實(shí)參數(shù)組大小一致。 數(shù)組名作函數(shù)參數(shù)時(shí),不是單純“值傳遞”,而是把實(shí)參數(shù)組的起始地址傳遞給形參數(shù)組 ,這樣兩個(gè)數(shù)組就共同占一段內(nèi)存單元。 形參數(shù)組也可以不指定大小 例 數(shù)組排序 簡(jiǎn)單選擇排序 void sort(int array[],int n) { int i,j,k,t。 for(i=0。in1。i++) { k=i。 for(j=i+1。jn。j++) if(array[j]array[k]) k=j。 if(k!=i) { t=array[i]。 array[i]=array[k]。 array[k]=t。 } } } void main() { int a[10],i。 for(i=0。i10。i++) scanf(%d,amp。a[i])。 sort(a,10)。 for(i=0。i10。i++) printf(%d ,a[i])。 printf(\n)。 } 0 1 2 3 4 5 6 7 8 9 a 49 68 57 32 9 99 27 13 76 88 array k j j j k j k j j j j j 9 49 i=0 三、用多維數(shù)組作函數(shù)參數(shù) 多維數(shù)組元素可以作為實(shí)參。 多維數(shù)組名可以作為實(shí)參和形參: 在被調(diào)用函數(shù)中對(duì)形參數(shù)組定義時(shí)可以指定每一維的大小,也可以省略第一維的大小說(shuō)明。實(shí)參數(shù)組可以大于形參數(shù)組,這時(shí)形參數(shù)組只取實(shí)參數(shù)組的一部分。 ?請(qǐng)看下頁(yè)程序舉例 [例 ]有一個(gè) 3*4的矩陣,求其中的最大元素。程序如下: max_value(array) int array[ ][4]。 {int i,max。 max=array[0][0]。 for(i=0。i3。i++) for(j=0。j4。j++) if (array[i][j]max) max=array[i][j]。 return(max)。 } main() {static int a[3][4]={{1,3,5,7},{2,4,6,8},{15,17,34,12}}。 printf(“max value is %d\d”,max_value(a))。 } 返回 九、局部變量 ? 所有變量在使用之前,必須定義,系統(tǒng)會(huì)分配內(nèi)存單元給這個(gè)變量。 include float maxx (float x, float y。) { float z。 z=xy? x:y。 return(z)。 } void main(void) { float a,b。 float c。 int maxx(float x,float y)。 scanf(%f,%f,amp。a,amp。b)。 c=maxx(a,b)。 printf(the max is %f\n,c)。 } a,b,c變量使用的有效范圍 x,y,z變量使用的有效范圍 ? 在一個(gè)函數(shù)內(nèi)部定義的變量是內(nèi)部變量,它只在本函數(shù)范圍內(nèi)有效,在本函數(shù)以外不能使用這些變量。這稱為“ 局部變量 ”。 float f1(a) /*函數(shù) f1*/ int a。 {int b,c。 . . . } char f2(x,y) /*函數(shù) f2*/ int x,y 。 {int i ,m,a。 x,y,I,m,a 有效 } main() /*主函數(shù) */ {int m,n。 . . . } 九、局部變量 主函數(shù)中定義的變量也只在主函數(shù)中有效。主函數(shù)也不能使用其他函數(shù)中定義的變量。 不同函數(shù)可以使用 相同名 字的變量 ,它們代表不同的對(duì)象 .互不干擾。 形參也是局部變量 mai() {int a,b。 … {int b,c。 … } …. } 在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語(yǔ)句中定義變量,這些變量只在本 復(fù)合語(yǔ)句中有效 ,這種復(fù)合語(yǔ)句也可稱作“分程序” 或“程序塊”。 **例 *** ** f1中的 a,b,c與 f2中的 a,b,c不同,他們都是 局部變量 **** float f2(int a,int b,int c) { printf(Input a data==)。 scanf(%d,amp。c)。 printf(a=%d,b=%d\n,a,b)。 c=a+b+c。 return (c)。 } float f1(int a) { int b,c。 printf(Input two datas==)。 scanf(%d,%d,amp。b,amp。c)。 a=b+c。 return (a)。 } main() { int x=10,u,v。 u=f1(x)。 v=f2(x,x,x)。 printf(mainU=%d\n,u)。 printf(mainV=%d\n,v)。 } 返回 不同函數(shù)中可以使用 相同名 字的變量 ,它們代表不同的對(duì)象 .互不干擾。 十、全局變量 ? 程序的編譯單位是源程序文件,一個(gè)源文件包含一個(gè)或若干個(gè)函數(shù)。 在函數(shù)內(nèi)定義的變量是局部變量 ,而在 函數(shù)之外定義的變量稱為外部變量,外部變量是全局變量 。全局變量可以為文件中其他函數(shù)所共用。它的有效范圍為:從定義變量的位置開(kāi)始到本源文件結(jié)束 。在一個(gè)函數(shù)中既可以使用本函數(shù)中的局部變量,又可以使用有效的全局變量。 int p,q。 //外部變量 float f1( int a) {int b,c。 … // 局部變量 } char c1,c2。 //外部變量 char( int x,int y) {int i,j。 … // 局部變量 } main() {int m,n。 … // 局部變量 } 有效 有效 ***例 ***** b,c是全局變量,在所有函數(shù)之前說(shuō)明 int b=1,c=2。 float f1(int a) { a=a+b+c。 c=20。 return (a)。 } float f2(int a) { int b=5。 a=a+b+c。 return (a)。 } main() { int x=5,u,v。 u=f1(x)。 v=f2(x)。 printf(mainU=%d\n,u)。 printf(mainV=%d\n,v)。 } b,c全局變量 b局部變量 ,如果在同一個(gè)源文件中,外部變量與局部變量同名, 在局部變量的作用范圍內(nèi),外部變量不起作用 。 ?說(shuō)明: ?1。 全局變量的作用是 :增加了函數(shù)間數(shù)據(jù)聯(lián)系的渠道。同一文件中的函數(shù)都能引用全局變量的值,在一個(gè)函數(shù)中改變了全局變量的值,會(huì)影響到其他函數(shù),相當(dāng)于各個(gè)函數(shù)間有直接的傳遞通道。利用全局變量從函數(shù)得到一個(gè)以上的返回值。 ?2。 建議盡量不要使用全局變量 ,因?yàn)椋? ( 1)全局變量在程序的全部執(zhí)行過(guò)程中都占用存儲(chǔ)單元。 ( 2)函數(shù)的通用性降低,函數(shù)執(zhí)行時(shí)要依賴于包含外部變量。 (3)使用全局變量過(guò)多,會(huì)降低程序的清晰性。 ?3。如果在同一個(gè)源文件中,外部變量與局部變量同名, 在局部變量的作用范圍內(nèi),外部變量不起作用 。 ?有關(guān)程序舉例見(jiàn)下頁(yè)。 [例 ] int a=3,b=5。 max( a,b) int a,b。 {int c。 形參 a,b作用范圍 c=ab?a:b。 return(c)。 } main( ) {int a=8。 局部變量 a作用范圍 printf(“%d”,max(a,b))。 全局變量 b作用范圍 } 運(yùn)行結(jié)果為: 8 返回 十一、變量的存儲(chǔ)屬性 – 概述 ? 變量是對(duì)程序中數(shù)據(jù)的存儲(chǔ)空間的抽象 內(nèi)存 ……. void main() { int a。 a=10。 printf(“%d”,a)。 } 10 2022 2022 程序中使用變量名對(duì)內(nèi)存操作 ? 變量的屬性 – 數(shù)據(jù)類(lèi)型:變量所持有的數(shù)據(jù)的性質(zhì)( 操作屬性 ) – 存儲(chǔ)屬性 187。存儲(chǔ)器類(lèi)型:寄存器、靜態(tài)存儲(chǔ)區(qū)、動(dòng)態(tài)存儲(chǔ)區(qū) 187。生存期 :變量在某一時(shí)刻存在 靜態(tài)變量與動(dòng)態(tài)變量 187。作用域 :變量在某區(qū)域內(nèi)有效 局部變量與全局變量 ? 變量的存儲(chǔ)類(lèi)型 – auto 自動(dòng)型 – register寄存器型 – static 靜態(tài)型 – extern 外部型 ? 變量定義格式 : [存儲(chǔ)類(lèi)型 ] 數(shù)據(jù)類(lèi)型 變量表 。 ? 變量的存儲(chǔ)屬性 – 概述 ? 變量是對(duì)程序中數(shù)據(jù)的存儲(chǔ)空間的抽象 如 : int sum。 auto int a,b,c。 register int i。 static float x,y。 – 局部變量與全局變量 ? 局部變量 內(nèi)部變量 – 定義:在 函數(shù)內(nèi)定義 , 只在本函數(shù)內(nèi)有效 – 說(shuō)明: 187。main中定義的變量只在 main中有效 187。不同函數(shù)中同名變量,占不同內(nèi)存單元 187。形參屬于局部變量 187??啥x在復(fù)合語(yǔ)句中有效的變量
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1