I know that arrays decay to pointer. As a result, because it behaves like a pointer, it can essentially be passed to functions with arguments that require a memory address without the use of an ampersand. For instance:
char name[10];
scanf("%s", name);
is correct.
However, let's say if I want to fill in only the first element of 'name' array, why can't I write it as
scanf("%c", name[0]);
but must write it with the ampersand in front of 'name[0]'? Does this mean that individual array elements do not decay to pointers and do not hold their individual memory address as opposed to their entire array counterpart?