Intro to 2D Arrays
2D Array Basics.
2D-Array-Demo.c
#include <stdio.h>
#include <stdlib.h>
#define length 5
#define width 8
int main(void) {
//basic 2d array declaration, single assignments and value reference
// indices 0 ... 4 are valid for first dim.
// indices 0 ... 7 are valid for second dim.
puts("-single values-");
char charArray2D[length][width];
charArray2D[1][2] = 'a';
printf("[1][2] = %c\n", charArray2D[1][2]);
puts("-loops through whole array pt 1-");
// looping to set values
char c = 'A';
for (int i = 0; i < length; i++){
for (int j = 0; j < width; j++) {
charArray2D[i][j] = c;
c++;
}
}
// looping to access values, second dimension first
for (int i = 0; i < length; i++) {
for (int j = 0; j < width; j++) {
printf("[%d][%d] = %c\n", i, j, charArray2D[i][j]);
}
}
puts("\n-loops through whole array pt 1-");
//looping through first dimension first
for (int j = 0; j < width; j++) {
for (int i = 0; i < length; i++) {
printf("[%d][%d] = %c\n", i, j, charArray2D[i][j]);
}
}
puts("\n-Printing in a 'grid' pt 1-");
for (int i = 0; i < length; i++) {
for (int j = 0; j < width; j++) {
printf("%c ", charArray2D[i][j]);
}
printf("\n");
}
puts("\n-Printing in a 'grid' pt 2-");
for (int j = 0; j < width; j++) {
for (int i = 0; i < length; i++) {
printf("%c ", charArray2D[i][j]);
}
printf("\n");
}
return 0;
}