C# Programming Questions and Answers
Which of these will happen if recursive method does not have a base case?
If a recursive method does not have a base case which is necessary to meet the end of condition then an infinite loop occurs which results in stackoverflow exception error.
What is Recursion in CSharp defined as?
Recursion is the process of defining something in terms of itself. It allows us to define method that calls itself repeatedly until it meets some base case condition.
Which of these is not a correct statement?
No matter whatever is the programming language recursion is always managed by operating system.
Which of these data types is used by operating system to manage the Recursion in Csharp?
Answer: Option (D)
What will be the correct output the for the given code snippet?
class maths
{
int fact(int n)
{
int result;
if(n ==1)
return1;
result = fact(n -1)* n;
return result;
}
}
class Output
{
staticvoid main(String args[])
{
maths obj =new maths();
Console.WriteLine(obj.fact(1));
}
}
fact() calculates recursively the factorial of a number when n turns to be 1, base case is executed consecutively and hence 1 is returned.
Output: 1
What will be the correct output for the given code snippet?
class maths
{
int fact(int n)
{
int result;
if(n ==1)
return1;
result = fact(n -1)* n;
return result;
}
}
class Output
{
staticvoid main(String args[])
{
maths obj =new maths();
Console.WriteLine(obj.fact(4)*(3));
}
}
4! = 4 * 3 *2 * 1 = 24 * 3 = 72.Not factorial of 3 but just multiply the number with 3.
Output : 72