Pointers - Programming

Q1:

What will be the output of the program assuming that the array begins at location 1002?
#include<stdio.h>

int main()
{
    int a[2][3][4] = { {1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 1, 2}, 
                       {2, 1, 4, 7, 6, 7, 8, 9, 0, 0, 0, 0} };
    printf("%u, %u, %u, %d\n", a, *a, **a, ***a);
    return 0;
}

A 1002, 2004, 4008, 2

B 2004, 4008, 8016, 1

C 1002, 1002, 1002, 1

D Error

ANS:C - 1002, 1002, 1002, 1

No answer description is available. Let's discuss.