C語言數(shù)組的各種操作梳理_第1頁
C語言數(shù)組的各種操作梳理_第2頁
C語言數(shù)組的各種操作梳理_第3頁
C語言數(shù)組的各種操作梳理_第4頁
C語言數(shù)組的各種操作梳理_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第C語言數(shù)組的各種操作梳理目錄一、一維數(shù)組1.創(chuàng)建2.初始化3.使用4.數(shù)組在內存中的存儲5.數(shù)組大小的計算二、二維數(shù)組1.創(chuàng)建2.初始化3.使用4.二維數(shù)組在內存中的存儲三、數(shù)組作為函數(shù)參數(shù)1.關于數(shù)組名是數(shù)組首元素的地址的兩個例外2.冒泡排序

一、一維數(shù)組

1.創(chuàng)建

//如何創(chuàng)建數(shù)組

intnum[10];

chararr[10];

doublesum[10];

floatfix[10];

//變長數(shù)組

//數(shù)組的大小是變量

//C99語法支持

inta=10;

intarr[a];

2.初始化

intarr[3]={1,2,3};

//int數(shù)組類型

//arr數(shù)組名

//[3]數(shù)組有3個元素

//{1,2,3}初始化元素為1,2,3

3.使用

#includestdio.h

intmain()

intarr[10]={0};//給每個元素初始化為0

//數(shù)組是通過下標訪問的

//下標是從0開始的

intarr[4]=5;//把下標是4的元素給賦值為5

printf("%d\n",arr[4]);//輸出的是數(shù)組中第5個元素的值

return0;

//結果是5

4.數(shù)組在內存中的存儲

5.數(shù)組大小的計算

intarr[10];

intsz=sizeof(arr)/sizeof(arr[0]);

//sizeof(arr)計算的是數(shù)組的總大小

//sizeof(arr[0])計算的是第一個元素大小

//總大小/第一個元素大小=元素個數(shù)

二、二維數(shù)組

//創(chuàng)建一個3行3列的數(shù)組

intarr[3][3];

charsum[3][3];

//[]行的部分可以省略,列的不可以

intarr[][3];

charsum[][3];

2.初始化

//創(chuàng)建的同時賦值

//3行3列的二維數(shù)組有9個元素

intarr[3][3]={1,2,3,4,5,6,7,8,9};

intsum[][3]={1,2,3,4,5,6,7,8,9};

二維數(shù)組行和列的下標也是從0開始的

#includestdio.h

intmain()

intarr[3][3]={1,2,3,4,5,6,7,8,9};

inti=0;

intj=0;

//遍歷二維數(shù)組

for(i=0;ii++)

for(j=0;jj++)

//輸出行和列元素組成的坐標

printf("%d",arr[i][j]);

printf("\n");

return0;

}

輸出結果:

4.二維數(shù)組在內存中的存儲

#includestdio.h

intmain()

intarr[3][3]={1,2,3,4,5,6,7,8,9};

inti=0;

intj=0;

for(i=0;ii++)

for(j=0;jj++)

printf("arr[%d][%d]=%p\n",i,j,arr[i][j]);

printf("\n");

return0;

}

輸出結果:

二維數(shù)組在內存中也是連續(xù)存放的

一行是連續(xù),跨行也是連續(xù)

三、數(shù)組作為函數(shù)參數(shù)

1.關于數(shù)組名是數(shù)組首元素的地址的兩個例外

(1)sizeof[數(shù)組名]-數(shù)組名表示的是整個數(shù)組-計算的是整個數(shù)組的大小-單位是字節(jié)。

(2)數(shù)組名-數(shù)組名表示整個數(shù)組-取出的是整個數(shù)組的地址。

2.冒泡排序

(1)冒泡排序的思想:兩兩相鄰的元素進行比較,并且可能會進行交換

(2)代碼示例

#includestdio.h

voidbubble_sort(intarr[],intsz)//形參arr本質是指針

//確定趟數(shù)

inti=0;

//趟數(shù)

for(i=0;isz-1;i++)

//一趟冒泡排序的過程

intj=0;

//判斷相鄰的兩個數(shù)的大小,并交換

//每一趟結束后要排的數(shù)字都會減少一個

for(j=0;jsz-1-i;j++)

if(arr[j]arr[j+1])

//交換

inttmp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=tmp;

intmain()

inti=0;

intarr[]={5,4,3,2,1,0};

//排序為升序-冒泡排序

//計算數(shù)組元素個數(shù)

intsz=sizeof(arr)/sizeof(arr[0]);

bubble_sort(arr,sz);//冒泡排序的函數(shù)的調用

/

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論