250+ TOP MCQs on Storage Management and Answers

C helps anyone preparing for Genpact and other companies C interviews. One should practice these Objective Questions and answers continuously for 2-3 months to clear Genpact interviews on C Programming language.

Here is a listing of C Objective Questions on “Storage Management” along with answers, explanations and/or solutions:

1. Which of the following will return a result most quickly for searching a given key?
a) Unsorted Array
b) Sorted Array
c) Sorted linked list
d) Binary Search Tree
Answer: d
Clarification: None.

2. On freeing a dynamic memory, if the pointer value is not modified, then the pointer points to.
a) NULL
b) Other dynamically allocated memory
c) The same deallocated memory location
d) It points back to the location it was initialized with
Answer: c
Clarification: None.

3. Which of the following should be used for freeing the memory allocated in the following C code?

  1.     #include 
  2.     struct p
  3.     {
  4.         struct p *next;
  5.         int x;
  6.     };
  7.     int main()
  8.     {
  9.         struct p *p1 = (struct p*)malloc(sizeof(struct p));
  10.         p1->x = 1;
  11.         p1->next = (struct p*)malloc(sizeof(struct p));
  12.         return 0;
  13.     }

a)

b)

   free(p1->next);
   free(p1);

c) free(p1);
d) all of the mentioned
Answer: b
Clarification: None.

4. What will be the output of the following C code?

  1.     #include 
  2.     struct p
  3.     {
  4.         struct p *next;
  5.         int x;
  6.     };
  7.     int main()
  8.     {
  9.         struct p *p1 = calloc(1, sizeof(struct p));
  10.         p1->x = 1;
  11.         p1->next = calloc(1, sizeof(struct p));
  12.         printf("%dn", p1->next->x);
  13.         return 0;
  14.     }

a) Compile time error
b) 1
c) Somegarbage value
d) 0
Answer: d
Clarification: None.

5. What will be the output of the following C code?

  1.      #include 
  2.     struct p
  3.     {
  4.         struct p *next;
  5.         int x;
  6.     };
  7.     int main()
  8.     {
  9.         struct p* p1 = malloc(sizeof(struct p));
  10.         p1->x = 1;
  11.         p1->next = malloc(sizeof(struct p));
  12.         printf("%dn", p1->next->x);
  13.         return 0;
  14.     }

a) Compile time error
b) 1
c) Somegarbage value
d) 0
Answer: c
Clarification: None.

6. calloc() initialize memory with all bits set to zero.
a) True
b) False
c) Depends on the compiler
d) Depends on the standard
Answer: a
Clarification: None.

7. What if size is zero in the following C statement?

a) Allocate a memory location with zero length
b) Free the memory pointed to by ptr
c) Undefined behaviour
d) Doesn’t do any reallocation of ptr i.e. no operation
Answer: b
Clarification: None.

.

Leave a Reply

Your email address will not be published. Required fields are marked *