標準c語言03
陣列:
什麼是陣列:相同型別的變數的組合,是一種批量定義變數的方式
定義: 型別 陣列名[數量];
int arr[5]; == int num1,num2,num3,num4,num5;
使用:陣列名[下標];
下標:從0開始,範圍:0 ~ 數量-1
遍歷:與for迴圈配合使用,使用迴圈變數 i 當做陣列的下標
初始化:型別 陣列名[數量] = {1,2,3,4,5…};
1、陣列與普通變數是一樣預設值是隨機,為安全也要對陣列進行初始化
2、這種初始化語法只能在定義陣列時使用,而且不能整體賦值
3、如果初始化資料過多,編譯器會丟棄,併產生警告
4、如果初始化資料不足,編譯器則補0
5、初始化陣列時長度可以省略,編譯器會自動統計資料的個數,然後告訴陣列
sizeof(arr)/sizeof(arr[0]) == 陣列長度
練習1:定義一個長度為10的陣列並初始化,計算出最大值,最小值,以及平均值。
練習2:定義一個長度為10的陣列並初始化,進行升序排序
a b c d e
0 1 2 3 4
陣列越界:
為了程式的執行效率,不會檢查陣列的下標
陣列越界的後果:
1、一切正常
2、段錯誤
3、髒資料
練習3:定義一個長度為10的陣列並初始化,找出陣列中第二大的值。
二維陣列:
一維陣列相當於把變數排成一排,通過編號訪問。
二維陣列相當於把變數排成矩陣,通過行號和列號來訪問。
定義:型別 陣列名[行數][列數];
int arr[3][5];
[0,0][0,1][0,2][0,3][0,4]
[1,0][1,1][1,2][1,3][1,4]
[2,0][2,1][2,2][2,3][2,4]
使用:陣列名[行下標][列下標]
行下標: 0~行數-1
列下標: 0~列數-1
遍歷:需要與雙層for迴圈配合,外層迴圈負責遍歷行,內層迴圈負責遍歷列
for(int i = 0;i < 3;i++)
{
for(int j = 0;j < 5;j++)
{
printf("%d “,arr[i][j]);
}
printf(”\n");
}
初始化:型別 陣列名[行數][列數] = {{第一行},{第二行},{第三行}};
練習4:定義一個5*5二維陣列,找出陣列中的最大值的座標,然後計算出來這個位置周圍的和。
變長陣列:
定義陣列時使用變數作為陣列的長度,在程式碼編譯期間陣列的長度是不確定,當執行到陣列定義語句時,長度才能確定下來。
一旦陣列長度確定後,不能改變。
優點:可以根據實際情況來確定陣列的長度,能達到節約記憶體目的
缺點:不可以初始化
相關文章
- 標準C語言1C語言
- 標準C語言2C語言
- 標準C語言4C語言
- 標準C語言5C語言
- C語言教程——03 C語言結構C語言
- C語言指標C語言指標
- go語言標準庫 - timeGo
- go語言標準庫 - strconvGo
- go語言標準庫 - regexpGo
- go語言標準庫 - logGo
- C語言I部落格作業03C語言
- C2x將成為C語言的下一個ISO標準C語言
- 在 ISO C90 標準中 C 語言負數比正數大?
- c語言指標彙總C語言指標
- C語言指標用法大全C語言指標
- C語言 函式指標C語言函式指標
- C語言指標筆記C語言指標筆記
- C語言基礎-指標C語言指標
- C語言指標學習C語言指標
- C語言之標準檔案操作C語言
- RFC6020 - YANG語言標準中文
- C語言知識彙總 | 51-C語言字串指標(指向字串的指標)C語言字串指標
- C語言知識彙總 | 56-C語言NULL空指標以及void指標C語言Null指標
- C語言指標詳解(一)C語言指標
- C語言指標詳解(二)C語言指標
- C語言 指標與陣列C語言指標陣列
- C語言基礎-1、指標C語言指標
- c語言實現this指標效果C語言指標
- 搞清楚C語言指標C語言指標
- C語言 - 標頭檔案包含C語言
- C語言指標基本知識C語言指標
- Dart 語言標準流與檔案操作Dart
- Golang語言標準庫time實戰篇Golang
- C語言指標(二) 指標變數 ----by xhxhC語言指標變數
- C++程式語言的四個準則C++
- c語言-運算子,陣列,指標C語言陣列指標
- C語言指標常見問題C語言指標
- C語言指標(三):陣列指標和字串指標C語言指標陣列字串