在C語言中,三元數組(也稱為三維數組)可以看作是一個數組的數組,其中每個元素都是一個數組。這里是一個簡單的實現方法:
#include <stdio.h>
#include <stdlib.h>
int main() {
// 定義一個三維數組
int ***array;
int x, y, z;
// 設置數組的大小
int x_size = 3;
int y_size = 4;
int z_size = 2;
// 為三維數組分配內存
array = (int ***)malloc(x_size * sizeof(int **));
for (x = 0; x < x_size; x++) {
array[x] = (int **)malloc(y_size * sizeof(int *));
for (y = 0; y < y_size; y++) {
array[x][y] = (int *)malloc(z_size * sizeof(int));
}
}
// 初始化數組
for (x = 0; x < x_size; x++) {
for (y = 0; y < y_size; y++) {
for (z = 0; z < z_size; z++) {
array[x][y][z] = x * y * z;
}
}
}
// 顯示數組內容
for (x = 0; x < x_size; x++) {
for (y = 0; y < y_size; y++) {
for (z = 0; z < z_size; z++) {
printf("%d ", array[x][y][z]);
}
printf("\n");
}
printf("\n");
}
// 釋放內存
for (x = 0; x < x_size; x++) {
for (y = 0; y < y_size; y++) {
free(array[x][y]);
}
free(array[x]);
}
free(array);
return 0;
}
這個程序創建了一個3x4x2的三元數組,并使用嵌套循環初始化其元素。然后,它使用另一個嵌套循環顯示數組的內容。最后,它釋放了分配給數組的內存。