Clearly the indexed approach allows you to find the correct element more quickly, on average.
- To make a program more readable.
- To allow the value to be changed by editing the definition in one place, rather than finding every occurence.
- To allow the compiler to check if we are using the name correctly (although C is not much help in that respect!)
Some answers to these questions.