General Questions

Question 1 :

Which of the following will be the correct output for the C#.NET program given below?

namespace IndiaparinamConsoleApplication
{ 
    class SampleProgram
    {
        static void Main(string[] args)
        { 
            int num = 1;
            funcv(num); 
            Console.Write(num + ", "); 
            funcr(ref num); 
            Console.Write(num + ", ");
        }
        static void funcv(int num)
        { 
            num = num + 10; Console.Write(num + ", ");
        }
        static void funcr (ref int num)
        { 
            num = num + 10; Console.Write(num + ", ");
        } 
    } 
}


A). 1, 1, 1, 1,
B). 11, 1, 11, 11,
C). 11, 11, 11, 11,
D). 11, 11, 21, 11,
E). 11, 11, 21, 21,
Answer : Option B

Question 2 :

What will be the output of the C#.NET code snippet given below?

namespace IndiaparinamConsoleApplication
{ 
    class SampleProgram
    { 
        static void Main(string[] args)
        { 
            int[]arr = newint[]{ 1, 2, 3, 4, 5 }; 
            fun(ref arr);
        }
        static void fun(ref int[] a)
        { 
            for (int i = 0; i < a.Length; i++)
            { 
                a[i] = a[i] * 5; 
                Console.Write(a[ i ] + " "); 
            } 
        } 
    } 
}


A). 1 2 3 4 5
B). 6 7 8 9 10
C). 5 10 15 20 25
D). 5 25 125 625 3125
E). 6 12 18 24 30
Answer : Option C

Question 3 :

Which of the following statements are correct?

1. An argument passed to a ref parameter need not be initialized first.
2. Variables passed as out arguments need to be initialized prior to being passed.
3. Argument that uses params keyword must be the last argument of variable argument list of a method.
4. Pass by reference eliminates the overhead of copying large data items.
5. To use a ref parameter only the calling method must explicitly use the ref keyword.


A). 1, 2
B). 2, 3
C). 3, 4
D). 4, 5
E). None of these
Answer : Option C

Question 4 :

A function returns a value, whereas a subroutine cannot return a value.


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

Question 5 :

Which of the following statements are correct about functions and subroutines used in C#.NET?

1. A function cannot be called from a subroutine.
2. The ref keyword causes arguments to be passed by reference.
3. While using ref keyword any changes made to the parameter in the method will be reflected in that variable when control passes back to the calling method.
4. A subroutine cannot be called from a function.
5. Functions and subroutines can be called recursively.


A). 1, 2, 4
B). 2, 3, 5
C). 3, 5
D). 4, 5
E). None of these
Answer : Option B

Question 6 :

Which of the following will be the correct output for the C#.NET program given below?

namespace IndiaparinamConsoleApplication
{ 
    class SampleProgram
    { 
        static void Main(string[] args)
        {
            int a = 5; 
            int s = 0, c = 0;
            Proc(a, ref s, ref c);
            Console.WriteLine(s + " " + c);
        }
        static void Proc(int x, ref int ss, ref int cc)
        {
            ss = x * x;
            cc = x * x * x;
        } 
    } 
}


A). 0 0
B). 25 25
C). 125 125
D). 25 125
E). None of the above
Answer : Option D

Question 7 :

What will be the output of the C#.NET code snippet given below?

namespace IndiaparinamConsoleApplication
{
    class SampleProgram
    {
        static void Main(string[ ] args)
        {
            int i = 10;
            double d = 34.340;
            fun(i);
            fun(d);
        }
        static void fun(double d)
        {
            Console.WriteLine(d + " ");
        }
    }
}


A). 10.000000 34.340000
B). 10 34
C). 10 34.340
D). 10 34.34
Answer : Option D

Question 8 :

Which of the following statements are correct?

1. C# allows a function to have arguments with default values.
2. C# allows a function to have variable number of arguments.
3. Omitting the return value type in method definition results into an exception.
4. Redefining a method parameter in the method's body causes an exception.
5. params is used to specify the syntax for a function with variable number of arguments.


A). 1, 3, 5
B). 3, 4, 5
C). 2, 5
D). 4, 5
E). None of these
Answer : Option C

Question 9 :

If a procedure fun() is to receive an int, a Single & a double and it is to return a decimal then which of the following is the correct way of defining this procedure?


A). fun(int i, Single j, double k) decimal { ... }
B). static decimal fun(int i, Single j, double k) { ... }
C). fun(int i, Single j, double k) { ... return decimal; }
D). static decimal fun(int i, Single j, double k) decimal { ... }
E). A procedure can never return a value.
Answer : Option E

Question 10 :

If a function fun() is to receive an int, a Single & a double and it is to return a decimal then which of the following is the correct way of defining this function?


A). decimal static fun(int i, Single j, double k){ ... }
B). decimal fun(int i, Single j, double k){ ... }
C). static decimal fun(int i, Single j, double k){ ... }
D). static decimal fun(int i, Single j, double k) decimal{ ... }
E). static fun(int i, Single j, double k){ ... return decimal;}
Answer : Option C

Question 11 :

Which of the following statements are correct about functions used in C#.NET?

1. Function definitions cannot be nested.
2. Functions can be called recursively.
3. If we do not return a value from a function then a value -1 gets returned.
4. To return the control from middle of a function exit function should be used.
5. Function calls can be nested.


A). 1, 2, 5
B). 2, 3, 5
C). 2, 3
D). 4, 5
E). None of these
Answer : Option A

Question 12 :

How many values is a function capable of returning?


A). 1
B). 0
C). Depends upon how many params arguments does it use.
D). Any number of values.
E). Depends upon how many ref arguments does it use.
Answer : Option A

Question 13 :

What will be the output of the C#.NET code snippet given below?

namespace IndiaparinamConsoleApplication
{
    class SampleProgram
    {
        static void Main(string[ ] args)
        {
            object[] o = new object[] {"1", 4.0, "India", 'B'};
            fun (o);
        }
        static void fun (params object[] obj)
        {
            for (int i = 0; i < obj.Length-1; i++)
            Console.Write(obj[i] + " ");
        }
    }
}


A). 1 4.0 India B
B). 1 4.0 India
C). 1 4 India
D). 1 India B
Answer : Option C

Question 14 :

How many values is a subroutine capable of returning?


A). Depends upon how many params arguments does it use.
B). Any number of values.
C). Depends upon how many ref arguments does it use.
D). 0
E). 1
Answer : Option D

Question 15 :

Which of the following CANNOT occur multiple number of times in a program?


A). namespace
B). Entrypoint
C). Class
D). Function
E). Subroutine
Answer : Option B

Question 16 :

What will be the output of the C#.NET code snippet given below?

namespace IndiaparinamConsoleApplication
{
    class SampleProgram
    {
        static void Main(string[ ] args)
        {
            int i;
            int res = fun(out i);
            Console.WriteLine(res);
        }
        static int fun (out int i)
        {
            int s = 1;
            i = 7;
            for(int j = 1; j <= i; j++)
            {
                s = s * j;
            }
            return s;
        } 
    } 
}


A). 1
B). 7
C). 8
D). 720
E). 5040
Answer : Option E

Question 17 :

If a function fun() is to sometimes receive an int and sometimes a double then which of the following is the correct way of defining this function?


A). static void fun(object i){ ... }
B). static void fun(int i){ ... }
C). static void fun(double i, int j){ ... }
D). static void fun(int i, double j){ ... }
E). static void fun(int i, double j, ){ ... }
Answer : Option A

Question 18 :

Which of the following statements are correct about subroutines used in C#.NET?

1. If we do not return a value from a subroutine then a value -1 gets returned.
2. Subroutine definitions cannot be nested.
3. Subroutine can be called recursively.
4. To return the control from middle of a subroutine exit subroutine should be used.
5. Subroutine calls can be nested.


A). 1, 2, 3
B). 2, 3, 5
C). 3, 5
D). 3, 4
E). None of these
Answer : Option B

Question 19 :

A function can be used in an expression, whereas a subroutine cannot be.


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

Question 20 :

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

namespace IndiaparinamConsoleApplication
{ 
    class SampleProgram
    { 
        static void Main(string[ ] args)
        { 
            int a = 5;
            int s = 0, c = 0; 
            s, c = fun(a); 
            Console.WriteLine(s +" " + c) ;
        }
        static int fun(int x)
        {
            int ss, cc;
            ss = x * x; cc = x * x * x; 
            return ss, cc;
        } 
    } 
}
1. An error will be reported in the statement s, c = fun(a); since multiple values returned from a function cannot be collected in this manner.
2. It will output 25 125.
3. It will output 25 0.
4. It will output 0 125.
5. An error will be reported in the statement return ss, cc; since a function cannot return multiple values.


A). 1, 3
B). 2, 4
C). 4, 5
D). 1, 5
E). None of these
Answer : Option D

Question 21 :

What will be the output of the C#.NET code snippet given below?

namespace IndiaparinamConsoleApplication
{
    class SampleProgram
    {
        static void Main(string[ ] args)
        {
            int i = 5;
            int j;
            fun1(ref i);
            fun2(out j);
            Console.WriteLine(i + ", " + j);
        }
        static void funl(ref int x)
        {
            x = x * x;
        }
        static void fun2(out int x)
        {
            x = 6; 
            x = x * x; 
        }
    }
}


A). 5, 6
B). 5, 36
C). 25, 36
D). 25, 0
E). 5, 0
Answer : Option C