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

正文內(nèi)容

難動(dòng)態(tài)分配內(nèi)存、方便使用字符串和數(shù)組、能使函數(shù)返回一(編輯修改稿)

2024-10-07 00:56 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 2) 指向數(shù)組的指針變量 , 可以指向數(shù)組以后的內(nèi)存單元 , 雖然沒有實(shí)際意義 。 ( 3) 對(duì)指向數(shù)組的指針變量 ( px和 py) 進(jìn)行算術(shù)運(yùn)算和關(guān)系運(yùn)算的含義如下: 1) 可以進(jìn)行的算術(shù)運(yùn)算 , 只有以下幾種: px177。 n:將指針從當(dāng)前位置向前 ( +n) 或回退 ( n)n個(gè)數(shù)據(jù)單位 , 而不是 n個(gè)字節(jié) 。 pxpy:兩指針之間的數(shù)據(jù)個(gè)數(shù) , 而不是指針的地址之差 。 2) 關(guān)系運(yùn)算 表示兩個(gè)指針?biāo)傅刂分g 、 位置的前后關(guān)系:前者為小 , 后者為大 。 例如 , 如果指針 px所指地址在指針 py所指地址之前 , 則 pxpy的值為 1。 例:通過指針變量輸出數(shù)組的 10個(gè)元素 include void main(){ int *p,i,a[10]。 p=a。 for(i=0。i10。i++) scanf(%d,p++)。 printf(\n)。 for(i=0。i10。i++) printf(%5d,a[i])。 printf(\n)。 for(i=0。i10。i++,p++) printf(\t%d,*p)。 printf(\n)。 } 用數(shù)組名作為函數(shù)參數(shù) 形參:數(shù)組或指針變量 實(shí)參:數(shù)組名或指向數(shù)組的指針變量 傳遞方式:地址傳送方式 作用:若函數(shù)中對(duì)數(shù)組作了修改,則調(diào)用函數(shù)中的數(shù)組也會(huì)作同樣的修改 例 將數(shù)組 a中的 n個(gè)整數(shù)按相反次序存放 include void main() {int i, a[10]={0,1,2,3,4,5,6,7,8,9},*p。 void inv(int x[],int n)。 for(i=0。i10。i++) printf(%5d,a[i])。 printf(\n)。p=a。 inv(a,10)。inv(p,10)。 for(i=0。i10。i++) printf(%5d,a[i])。 } void inv(int *x, int n) {int temp,*i,*j,*p,m=(n1)/2。 i=x。j=x+n1。p=x+m。 for(。i=p。i++,j) {temp=*i。 *i=*j。 *j=temp。} } void inv(int x[], int n) {int temp,i,j,m=(n1)/2。 for(i=0。i=m。i++) {j=ni1。 temp=x[i]。 x[i]=x[j]。 x[j]=temp。 }} 多維數(shù)組與指針 1. 多維數(shù)組元素的地址 假設(shè)有如下數(shù)組定義語句: int a [3][4]。 ( 1)從 2維數(shù)組角度看,數(shù)組名 a代表數(shù)組的起始地址, 是一個(gè)以行為單位進(jìn)行控制的行指針: a+i:行指針值,指向 2維數(shù)組的第 i行。 *(a+i):(列)指針值 (amp。a[i][0]),指向第 i行第0列(控制由行轉(zhuǎn)為列,但仍為指針)。 *(*(a+i)):數(shù)組元素 a [i][0]的值。 用 a作指針訪問數(shù)組元素 a [i][j]的格式: *(*(a+i)+ j) ( 2)從 1維數(shù)組角度看,數(shù)組名 a和第 1維下標(biāo)的每一個(gè)值, 共同構(gòu)成一組新的 1維數(shù)組名 a [0]、 a [1]、 a [2],它們均由 4個(gè)元素組成。 C語言規(guī)定: 數(shù)組名代表數(shù)組的地址 , 所以 a [i]是第 i行 1維數(shù)組的地址 , 它指向該行的第 0列元素 , 是一個(gè)以數(shù)組元素為單位進(jìn)行控制的列指針: a[i]+j: ( 列 ) 指針值 , 指向數(shù)組元素 a [i][j]。 *(a[i]+j):數(shù)組元素 a [i][j]的值 。 如果有 “ int a[3][4],*p=a [0]; ” , 則 p+1指向下一個(gè)元素 , 用 p作指針訪問數(shù)組元素 a [i][j]的格式: *(p+(i *每行列數(shù) +j) ) a+i 即 a[i] a[i]+j 即 amp。a[i][j] *(a+i)+j即 amp。a[i][0]+j即 amp。a[i][j] *(*(a+i)+j)即 a[i][j] 2,指向多維數(shù)組元素的指針變量 ( 1)指向數(shù)組元素的指針變量 例 用指針變量輸出數(shù)組元素的值 include void main() {int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}。 int *p。 for(p=a[0]。pa[0]+12。p++) {if((pa[0])%4==0)printf(\n)。 printf(%4d,*p)。 } } 例 include void main() {int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}。 int (*p)[4],i,j。//定義一個(gè)指向含有 4個(gè)元素的整型數(shù)組 p=a。 scanf(i=%d,j=%d,amp。i,amp。j)。 printf(a[%d,%d]=%d\n,i,j,*(*(p+i)+j))。 } 例 有一個(gè)班, 3個(gè)學(xué)生,各學(xué) 4門課程,計(jì)算總 1平均分?jǐn)?shù)及輸出第 n個(gè)學(xué)生的成績(jī)。 算法設(shè)計(jì): 主函數(shù): 1,函數(shù)聲明 2,初始化成績(jī) 3,調(diào)用求平均成績(jī)的函數(shù) 4,調(diào)用函數(shù)輸出第 i個(gè)學(xué)生的成績(jī) 求平均值函數(shù): 1,求總成績(jī) 2,返回平均成績(jī) 輸出函數(shù) 使用 for循環(huán),直接輸出成績(jī) include void main( ){ void average(float *p,int n)。 void search(float (*p)[4], int n)。 float score[3][4]={{65,67,70,60},{80,87,90,81},{90,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1