

MCQOPTIONS
Saved Bookmarks
1. |
Consider the C function given below. Assume that the array listA contains n (> 0) elements, sorted in ascending order. int ProcessArray(int *listA, int x, int n) { int i, j, k; i = 0; j = n-1; do { k = (i+j)/2; if (x <= listA[k]) j = k-1; if (listA[k] <= x) i = k+1; } while (i <= j); if (listA[k] == x) return(k); else return -1; } Which one of the following statements about the function ProcessArray is CORRECT? |
A. | It will run into an infinite loop when x is not in listA |
B. | It is an implementation of binary search |
C. | It will always find the maximum element in listA |
D. | It will return −1 even when x is present in listA. |
Answer» C. It will always find the maximum element in listA | |