1.6k views

Consider the following $C$ function definition

int Trial (int a, int b, int c)
{
if ((a>=b) && (c<b) return b;
else if (a>=b) return Trial(a, c, b);
else return Trial(b, a, c);
}


The functional Trial:

1. Finds the maximum of $a$, $b$, and $c$

2. Finds the minimum of $a$, $b$, and $c$

3. Finds the middle number of $a$, $b$, $c$

4. None of the above

edited | 1.6k views
if ((a>=b) && (c<b))

missing in question.

$a$ $b$ $c$ Return
1 1 1 The final return statement is $c < b$, so this never returns. Answer D

edited by
but sir there is no middle element in 111, so it wont find. what about other cases?
@Aspi this condition must also be handled by the program to guarentee that it returns a middle element for any three inputs.
it is going to infinite loop here.
Trial (a,b,c) return the median element of the a , b and c , but not middle element of a , b and c ,, so answer is (D)
reshown
For 3 values on sorting them its hould be middle value, but for same input a=b=c its falling into infinite loop
How it is returning median value can you justify using options?