### Yes / No Questions

Question 6 :

Usually recursion works slower than loops.

A). Yes
B). No
Answer : Option A

Explanation :

When a recursive call is made, the function/process clones itself and then process that funtion. This leads to time and space constrains.
In a loop, there is no recursive call involved that saves a lot of time and space too.

Question 7 :

Is it true that too many recursive calls may result into stack overflow?

A). Yes
B). No
Answer : Option A

Explanation :

Yes, too many recursive calls may result into stack overflow. because when a function is called its return address is stored in stack.
After sometime the stack memory will be filled completely. Hence stack overflow error will occur.

Question 8 :

In a function two return statements should never occur.

A). Yes
B). No
Answer : Option B

Explanation :

No, In a function two return statements can occur but not successively.

Example:

``````#include
int mul(int, int); /* Function prototype */

int main()
{
int a = 0, b = 3, c;
c = mul(a, b);
printf("c = %d\n", c);
return 0;
}

/* Two return statements in the mul() function */
int mul(int a, int b)
{
if(a == 0 || b == 0)
{
return 0;
}
else
{
return (a * b);
}
}``````
Output:
c = 0