type arrayName[length];
length 最好為常量表達式(如 10、20*4),變量長度數組 (VLA) 某些編譯器不支持arrayName[index]
0 ≤ index < length// 單個賦值
int a[3]; a[0]=3; a[1]=100; a[2]=34;
// 整體初始化(定義時)
float b[] = {23.3, 100.0, 10, 0.34}; // 長度自動推導
int m[10] = {100, 30, 234}; // 部分初始化,餘位補 0
char str1[] = "https://c.biancheng.net"; // 字符串初始化(含 \0)
int arr[10] = {0}; // 全 0 初始化技巧
char str2[20] = {0};
#include <stdio.h>
int main() {
int a[10], max, min, i;
// 從控制台輸入 10 個整數(利用標準輸入緩衝區,可一次輸入多個)
for (i = 0; i < 10; i++) scanf("%d", &a[i]);
// 假設首元素為最大/最小,遍歷比較更新
max = min = a[0];
for (i = 1; i < 10; i++) {
if (a[i] > max) max = a[i];
if (a[i] < min) min = a[i];
}
printf("The max is %d, The min is %d\n", max, min);
return 0;
}
2 123 45 100 575 240 799 710 10 90 The max is 799, The min is 2
scanf 讀取時遇空格/換行自動分隔,可一次性輸入多個數字學完數組基礎,必須掌握兩大核心操作:
常見算法:
| 分類 | 算法 | 複雜度 | 特點 |
|---|---|---|---|
| 排序 | 冒泡/選擇/插入 | O(n²) | 簡單、教學用 |
| 快速排序 | O(n log n) 平均 | 實戰最快、不穩定 | |
| 歸並排序 | O(n log n) 穩定 | 穩定、需額外空間 | |
| 堆排序 | O(n log n) | 原地、不穩定 | |
| 查找 | 順序查找 | O(n) | 無序數組通用 |
| 二分查找 | O(log n) | 需有序數組 |
排序與查找算法已設置為獨立章節講解,請查看《C語言排序和查找》專題。