I was asked this question as a class exercise:

```
int A[] = {1,3,5,7,9,0,2,4,6};

printf("%d\n", *(A+A[1]-*A));

```

I couldn't figure it out on paper, so went ahead to compiling a simple program and tested it and found that `printf("%d",*A)` always gives me `1` for the output.

But I still do not understand why this is the case, hence it would be great if someone can explain this.