General Questions

Question 1 :

Which of the following is NOT a .NET Exception class?


A). Exception
B). StackMemoryException
C). DivideByZeroException
D). OutOfMemoryException
E). InvalidOperationException
Answer : Option B

Question 2 :

Which of the following statements is correct about an Exception?


A). It occurs during compilation.
B). It occurs during linking.
C). It occurs at run-time.
D). It occurs during Just-In-Time compilation.
E). It occurs during loading of the program.
Answer : Option C

Question 3 :

In C#.NET if we do not catch the exception thrown at runtime then which of the following will catch it?


A). Compiler
B). CLR
C). Linker
D). Loader
E). Operating system
Answer : Option B

Question 4 :

Which of the following statements is correct about the C#.NET program given below?

using System;
namespace IndiaparinamConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index = 6;
            int val = 44;
            int[] a = new int[5];
            try
            {
                a[index] = val ;
            }    
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds ");
            }
            Console.Write("Remaining program");
        }
    }
}


A). Value 44 will get assigned to a[6].
B). It will output: Index out of bounds
C). It will output: Remaining program
D). It will not produce any output.
E). It will output: Index out of bounds Remaining program
Answer : Option E

Question 5 :

Which of the following statements are correct about exception handling in C#.NET?

1. If an exception occurs then the program terminates abruptly without getting any chance to recover from the exception.
2. No matter whether an exception occurs or not, the statements in the finally clause (if present) will get executed.
3. A program can contain multiple finally clauses.
4. A finally clause is written outside the try block.
5. finally clause is used to perform clean up operations like closing the network/database connections.


A). 1 only
B). 2 only
C). 2 and 5 only
D). 3 and 4 only
E). None of the above
Answer : Option C

Question 6 :

Which of the following statements are correct about exception handling in C#.NET?

1. If our program does not catch an exception then the .NET CLR catches it.
2. It is possible to create user-defined exceptions.
3. All types of exceptions can be caught using the Exception class.
4. CLRExceptions is the base class for all exception classes.
5. For every try block there must be a corresponding finally block.


A). 1 and 2 only
B). 1, 2 and 3 only
C). 4 and 5 only
D). All of the above
E). None of the above
Answer : Option B

Question 7 :

Which of the following statements are correct about the exception reported below?

Unhandled Exception: System.lndexOutOfRangeException: Index was outside the bounds of the array: at IndiaparinamConsoleApplication.MyProgram.SetVal(Int32 index, Int32 val) in D:\Sample\IndiaparinamConsoleApplication\MyProgram.cs:line 26 at IndiaparinamConsoleApplication.MyProgram.Main(String[] args) in D:\Sample\IndiaparinamConsoleApplication\MyProgram.cs:line 20
1. The CLR failed to handle the exception.
2. The class MyProgram belongs to the namespace MyProgram.
3. The function SetVal() was called from Main() in line number 20.
4. The exception occurred in line number 26 in the function SetVal()
5. The runtime exception occurred in the project IndiaparinamConsoleApplication.


A). 1 only
B). 1 and 2 only
C). 3, 4 and 5 only
D). All of the above
E). None of the above
Answer : Option C

Question 8 :

Which of the following is the Object Oriented way of handling run-time errors?


A). OnError
B). HERESULT
C). Exceptions
D). Error codes
E). Setjump and Longjump
Answer : Option C

Question 9 :

Which of the following statements is correct about the C#.NET program given below if a value "6" is input to it?

using System;
namespace IndiaparinamConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int val = 44;
            int[] a = new int[5];
            try
            {
                Console.Write("Enter a number:");
                index = Convert.Tolnt32(Console.ReadLine());
                a[index] = val;
            }
            catch(FormatException e)
            {
                Console.Write("Bad Format");
            }
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds");
            }
            Console.Write("Remaining program");
        }
    }
}


A). It will output: Index out of bounds Remaining program
B). It will output: Bad Format Remaining program
C). It will output: Bad Format
D). It will output: Remaining program
E). It will output: Index out of bounds
Answer : Option A

Question 10 :

Which of the following statements are correct about the exception reported below?

Unhandled Exception: System.lndexOutOfRangeException:
Index was outside the bounds of the array.
at IndiaparinamConsoleApplication.Program.Main(String[] args) in
D:\ConsoleApplication\Program.cs:line 14
1. The program did not handle an exception called IndexOutOfRangeException.
2. The program execution continued after the exception occurred.
3. The exception occurred in line number 14.
4. In line number 14, the program attempted to access an array element which was beyond the bounds of the array.
5. The CLR could not handle the exception.


A). 1 only
B). 1, 2 and 3 only
C). 2 and 5 only
D). 1, 3 and 4 only
E). None of the above
Answer : Option D

Question 11 :

Which of the following statements are correct about exception handling in C#.NET?

1. try blocks cannot be nested.
2. In one function, there can be only one try block.
3. An exception must be caught in the same function in which it is thrown.
4. All values set up in the exception object are available in the catch block.
5. While throwing a user-defined exception multiple values can be set in the exception, object.


A). 1 only
B). 1 and 2 only
C). 3 only
D). 4 and 5 only
E). All of the above
Answer : Option D

Question 12 :

Exceptions can be thrown even from a constructor, whereas error codes cannot be returned from a constructor.


A). True
B). False
Answer : Option A

Question 13 :

Which of the following statements is correct about the C#.NET program given below if a value "6" is input to it?

using System;
namespace IndiaparinamConsoleApplication
{
    class MyProgram
    {
        static void Main (string[] args)
        {
            int index; 
            int val = 66; 
            int[] a = new int[5]; 
            try
            {
                Consote.Write("Enter a number: "); 
                index = Convert.ToInt32(Console.ReadLine()); 
                a[index] = val;
            }
            catch(Exception e)
            {
                Console.Write("Exception occurred ");
            }
            Console.Write("Remaining program ");
        }
    }
}


A). It will output: Exception occurred
B). It will output: Remaining program
C). It will output: Exception occurred Remaining program
D). It will output: Remaining program Exception occurred
E). The value 66 will get assigned to a[6].
Answer : Option C

Question 14 :

Which of the following statements is correct about the C#.NET program given below if a value "ABCD" is input to it?

using System;
namespace IndiaparinamConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int val = 55; 
            int[] a = new int[5]; 
            try
            {
                Console.Write("Enter a number: ");
                index = Convert.ToInt32(Console.ReadLine());
                a[index] = val;
            }
            catch(FormatException e)
            {
                Console.Write("Bad Format ");
            }
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds ");
            }
            Console.Write("Remaining program ");
        }
    }
}


A). It will output: Bad Format
B). It will output: Remaining program
C). It will output: Index out of bounds
D). It will output: Bad Format Remaining program
E). It will output: Index out of bounds Remaining program
Answer : Option D

Question 15 :

All code inside finally block is guaranteed to execute irrespective of whether an exception occurs in the protected block or not.


A). True
B). False
Answer : Option A

Question 16 :

Which of the following is NOT an Exception?


A). StackOverflow
B). Division By Zero
C). Insufficient Memory
D). Incorrect Arithmetic Expression
E). Arithmetic overflow or underflow
Answer : Option D

Question 17 :

Which of the following statements is correct about the C#.NET program given below if a value "ABCD" is input to it?

using System;
namespace IndiaparinamConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int vat = 88;
            int[] a = new int(5];
            try
            {
                Console.Write("Enter a number: ");
                index = Convert.Toint32(Console.ReadLine());
                a[index] = val;
            }
            catch(Exception e)
            {
                Console.Write("Exception occurred");
            }
            Console.Write("Remaining program");
        }
    }
}


A). It will output: Exception occurred
B). It will output: Remaining program
C). It will output: Remaining program Exception occurred
D). It will output: Exception occurred Remaining program
E). The value 88 will get assigned to a[0].
Answer : Option D

Question 18 :

It is compulsory for all classes whose objects can be thrown with throw statement to be derived from System.Exception class.


A). True
B). False
Answer : Option B