General Questions

Question 11 :

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

struct Book
{
    private String name; 
    private int noofpages; 
    private Single price;
}
Book b = new Book();


A). The structure variable b will be created on the heap.
B). We can add a zero-argument constructor to the above structure.
C). When the program terminates, variable b will get garbage collected.
D). The structure variable b will be created on the stack.
E). We can inherit a new structure from struct Book.
Answer : Option D

Question 12 :

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

namespace IndiaparinamConsoleApplication
{ 
    struct Sample
    { 
        public int i;
    }
    class MyProgram
    { 
        static void Main(string[] args)
        {
            Sample x = new Sample(); 
            x.i = 10; 
            fun(ref x); 
            Console.Write(x.i + " ");
        }
        public static void fun(ref Sample y)
        { 
            y.i = 20;
            Console.Write(y.i + " "); 
        } 
    } 
}


A). 20 10
B). 10 20
C). 10 10
D). 20 20
E). None of the above
Answer : Option D

Question 13 :

Which of the following statements is correct?


A). A struct never declares a default constructor.
B). All value types in C# inherently derive from ValueType, which inherits from Object.
C). A struct never declares a default destructor.
D). In C#, classes and structs are semantically same.
Answer : Option B

Question 14 :

Which of the following statements are correct about the structure declaration given below?

struct Book
{
    private String name; 
    protected int totalpages; 
    public Single price; 
    public void Showdata()
    {
        Console.WriteLine(name + " " + totalpages + " " + price);
    } 
    Book()
    {
        name = " "; 
        totalpages = 0;
        price = 0.0f; 
    } 
} 
Book b = new Book();
1. We cannot declare the access modifier of totalpages as protected.
2. We cannot declare the access modifier of name as private.
3. We cannot define a zero-argument constructor inside a structure.
4. We cannot declare the access modifier of price as public.
5. We can define a Showdata() method inside a structure.


A). 1, 2
B). 1, 3, 5
C). 2, 4
D). 3, 4, 5
Answer : Option B

Question 15 :

Which of the following are true about classes and struct?

1. A class is a reference type, whereas a struct is a value type.
2. Objects are created using new, whereas structure variables can be created either using new or without using new.
3. A structure variable will always be created slower than an object.
4. A structure variable will die when it goes out of scope.
5. An object will die when it goes out of scope.


A). 1, 2, 4
B). 3, 5
C). 2, 4
D). 3, 4, 5
Answer : Option A