# C# Questions & Answers on Array and Intialization for Freshers

1. What is the output of the following set of code ?
1. `static void Main(string[] args)`
2. `{`
3. `    int i, j;`
4. `    int[, ] arr = new int[ 3, 3];`
5. `    for (i = 0; i < 3; ++i)`
6. `    {`
7. `        for (j = 0; j < 3; ++j)`
8. `        {`
9. `            arr[i, j] = i * 2 + i * 2;`
10. `            Console.WriteLine(arr[i, j]);`
11. `        }`
12. `        Console.ReadLine();`
13. `    }`
14. `}`
a) 0,0,0 4,4,4 8,8,8
b) 4,4,4 8,8,8 12,12,12
c) 8,8,8 12,12,12 16,16,16
d) 0,0,0 1,1,1, 2,2,2
Answer: a

Explanation: Since, with each value of of ‘i’ the value of ‘j’ is executed three times i.e
for i = 0, j = 0, 0, 0, i = 1, j = 2, 2, 2.
Output: 0, 0, 0 4, 4, 4 8, 8, 8.
2. What is the output for the following set of code?
1. ` static void Main(string[] args)`
2. ` {`
3. `     char A = 'K';`
4. `     char B = Convert.ToChar(76);`
5. `     A++;`
6. `     B++;`
7. `     Console.WriteLine(A+ "  " +B);`
8. `     Console.ReadLine();`
9. ` }`
a) M L
b) U L
c) L M
d) A B
Answer: c

Explanation: “++” increments the value of character by 1. A and B are given values K and 76, when we use increment operator their values increments by 1, A and B becomes L and M.
Output: L, M.
3. Complete the following set of code with “foreach condition”:
1. `int[][]a = new int[];`
2. `a = new int{3, 4, 2};`
3. `a = new int{8, 5};`
4. `foreach( int[]i in a)`
5. `{`
6. `/* add for loop */`
7. `console.write( j+ " ");`
8. `console.writeline();`
9. `}`
a) foreach (int j = 1;(j(<)(a(0).GetUpperBound)); (j++));
b) foreach (int j = 1;(j(<)(a.GetUpperBound(0))); (j++));
c) foreach (int j in a.Length);
d) foreach (int j in i);
Answer: d
4. What is the output for the following set of code ?
1. `static void Main(string[] args)`
2. `{`
3. `    double a = 345.09;`
4. `    byte c = (byte) a;`
5. `    Console.WriteLine(c);`
6. `    Console.ReadLine();`
7. `}`
a) 98
b) 89
c) 88
d) 84
Answer: b

Explanation: Type casting a larger variable into a smaller variable results in modules of larger variable by range of smaller variable. a is ‘345.09’ which is larger than byte’s range i:e -128 to 127.
Output : 89.
5. Which statement is correct about following c#.NET code ?
int[] a= {11, 3, 5, 9, 6};

a) ‘a’ is a reference to the array created on stack
b) ‘a’ is a reference to an object created on stack
c) ‘a’ is a reference to an object of a class that compiler drives from ‘System.Array’ class
d) None of the mentioned
Answer: c

Explanation: A perfect way of defining single array in C# which is derived automatically from class ‘System.Array’.
6. What is the advantage of using 2D jagged array over 2D rectangular array?

a) Easy initialization of elements
b) Allows unlimited elements as well as rows which had ‘0’ or are empty in nature
c) All of the mentioned
d) None of the mentioned
Answer: b

Explanation: In many applications where 2 dimensional arrays are used,not all rows need to have all the elements i.e they are sparse.Many rows have 0 elements.In such cases it is better to use 2D jagged arrays as they allow unequal number of elements in each row and also allow for empty rows.
7. Which statement is correct about following set of code ?
int[, ]a={{5, 4, 3},{9, 2, 6}};

a)’a’ represents 1-D array of 5 integers
b) a.GetUpperBound(0) gives 9
c)’a’ represents rectangular array of 2 columns and 3 arrays
d) a.GetUpperBound(0) gives 2
Answer: c

Explanation: By definition.
8. What is output of the following set of code?
1. `static void Main(string[] args)`
2. `{`
3. `    Program p = new Program();`
4. `    p.display(2, 3, 8);`
5. `    int []a = { 2, 56, 78, 66 };`
6. `    Console.WriteLine("example of array");`
7. `    Console.WriteLine("elements added are");`
8. `    p.display(a);`
9. `    Console.ReadLine();`
10. `}`
11. `public void display(params int[] b)`
12. `{`
13. `    foreach (int i in b)`
14. `    {`
15. `        Console.WriteLine("ARRAY IS HAVING:{0}", i);`
16. `    }`
17. `}`
a) Compile time error
b) Run time error
c) Code runs successfully but prints nothing
d) Code runs successfully and prints given on console
Answer: d

Explanation: Object ‘p’ makes a call to invoke function display() and hence consecutively prints the output. Array ‘a’ is declared with elements again object ‘p’ makes a call to display() and hence, consecutively prints the output with given elements.
Output: ARRAY IS HAVING:2
ARRAY IS HAVING:3
ARRAY IS HAVING:8
elements added are:
ARRAY IS HAVING:2
ARRAY IS HAVING:56
ARRAY IS HAVING:78
ARRAY IS HAVING:66
9. Which is the correct way of defining and initializing an array of 3 integers?

a) int[] a={78, 54};
b) int[] a;
a = new int;
a = 78;
a = 9;
a = 54;
c) int[] a;
a = new int{78, 9, 54};
d) int[] a;
a = new int{78, 9, 54};
Answer: d
10. Choose selective differences between an array in c# and array in other programming languages.

a) Declaring array in C# the square bracket([]) comes after the type but not after identifier
b) It is necessary to declare size of an array with its type
c) No difference between declaration of array in c# as well as as in other programming languages
d) All of the mentioned
Answer: a

Explanation:
1. When declaring an array in C#, the square brackets ([]) come after the type, not the identifier.Brackets after the identifier is
not legal syntax in C#.
example : int[] IntegerArray;
2. The size of the array is not part of its type as it is in the C language. This allows to declare an array and assign any array
of int objects to it, regardless of the array’s length.
int[] IntegerArray;
IntegerArray = new int;
IntegerArray = new int;

#### Related

Multiple Choice Questions 8907239243657722091