一維陣列

  1. 陣列存在於一段連續的記憶體,最小的記憶體存陣列第一個值,依此類推。
    \begin{tikzpicture}[node distance=6em]\setlength \baselineskip{1ex}
\node [input](input0) {};
......
  2. 宣告陣列
    type arrayName [ arraySize ];
    
  3. 範例
    double balance[10];
    
  4. 初始化:指定陣列元素個數。
    double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
    
  5. 初始化:較好的做法,中括號中不指定個數。
    double balance[] = {1000.0, 2.0, 3.4, 17.0, 50.0};
    
  6. 陣列在記憶體的存儲狀況。
    \begin{tikzpicture}[node distance=5em,auto]\setlength \baselineskip{1ex}
\node [input](input0) {};
......
  7. 範例
    [dywang@dyw219 zzz]$ vim array1.c 
    [dywang@dyw219 zzz]$ cat array1.c
    #include <stdio.h>
    
    main() {
    	int i, x, a[7];
    
    	printf("Enter an integer: ");
    	scanf("%d", &x);
    	for ( i=0; i<7; i++) {
    		a[i] = i + x; 
    		printf("a[%d] = %d\n", i, a[i]);
    	}
    }
    
  8. 編譯
    [dywang@dyw219 zzz]$ gcc -o array1 array1.c
    
  9. 執行結果
    [dywang@dyw219 zzz]$ ./array1 
    Enter an integer: 5
    a[0] = 5
    a[1] = 6
    a[2] = 7
    a[3] = 8
    a[4] = 9
    a[5] = 10
    a[6] = 11