Predict output of following program
C
#include <stdio.h>
int fun( int n)
{
if (n == 4)
return n;
else return 2*fun(n+1);
}
int main()
{
printf ( "%d" , fun(2));
return 0;
}
|
(A)
4
(B)
8
(C)
16
(D)
Runtime Error
Answer: (C)
Explanation:
Fun(2) = 2 * Fun(3) and Fun(3) = 2 * Fun(4) ….(i)
Fun(4) = 4 ……(ii)
From equation (i) and (ii),
Fun(2) = 2 * 2 * Fun(4)
Fun(2) = 2 * 2 * 4
Fun(2) = 16.
So, C is the correct answer
Quiz of this Question
Please comment below if you find anything wrong in the above post
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...