When initializing arrays in 'C', we do not need to specify all the elements in the array if we want them to be zero. By using
int x[10] = { 0 }
we can be assured that all 10 elements of the array are zero, without having to type out each one. This is handy if you have, say
int i[500] = { 0 };
If we know that we want only the first few elements of the array assigned, we can also do
int x[10] = { 1, 2, 3 };
which produce an array of 10 ints with the first three elements assigned the values, 1, 2, 3, and the rest of the array initialized to zero. In C99 and later, we can be even default initialize only a few elements of an array using the following syntax:
int x[6] = { [3] = 18, [1] = 9 };