The reason for using pointers in a Cprogram is
(A) Pointers allow different functions to share and modify their local variables.
(B) To pass large structures so that complete copy of the structure can be avoided.
(C) Pointers enable complex “linked” data structures like linked lists and binary trees.
(D) All of the above
Explanation: See below explanation
(A) With pointers, address of variables can be passed different functions can use this address to access the variables.
(B) When large structure variables passed or returned, they are copied as everything is passed and returned by value in C. This can be costly with structure containing large data. To avoid this copying of large variables, we generally use poitner for large structures so that only address is copied.
(C) With pointers, we can implement “linked” data structures. Java uses reference variables to implement these data structures. Note that C doesn’t support reference variables.