Answer A
struct node s = { 3, 5, 6 };
struct node *pt = &s;
printf("%d\n", *((int*)pt+1));
in last line we are type casting the pt pointer to type (int *) . Now after casting , pt+1 means pt +sizeof(int *)x1.
we know sizeof(int *)=4 and pt basically point the starting address of the struct node .Also we know in struct , elements are stored in contiguous memory location similar to an array.
Hence pt+1 will point to the second element of the structure. so redirection of same yield the second element ie 5