You are on page 1of 29

MULTILE CHOICE QUESTIONS (Unit II)

1. Two dimensional arrays are also called 


(a) table arrays (b) matrix arrays
(c) both of above (d) none of above
2. Which of the following data structure can store the non-homogeneous data elements?
(a) Array of integers (b) Records
(c) Array of characters (d) Array of real numbers
3. Which of the following data structure store the homogeneous data elements?
(a) Array of integers (b) Records
(c) Pointers (d) None
4. Each data item in a record may be a group item composed of sub-items; those items which are
indecomposable are called
(a) elementary items (b) atoms
(c) scalars (d) all of above
5. The difference between linear array and a record is 
(a) an array is suitable for homogeneous data but the data items in a record may have different
data type
(b) in a record, there may not be a natural ordering in opposed to linear array.
(c) a record form a hierarchical structure but a linear array does not
(d) all of above
6. What is the number of shifts required to sort n elements using insertion sort, in the worst case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
7. What is the number of swaps required to sort n elements using selection sort, in the worst case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
8. What is the number of swaps required to sort n elements using bubble sort, in the worst case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
9. What is the number of shifts required to sort n elements using insertion sort, in the best case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(1)
10. What is the number of swaps required to sort n elements using selection sort, in the best case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(1)
11. What is the number of swaps required to sort n elements using bubble sort, in the best case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O (1)
12. What is the number of comparisons required to sort n elements using insertion sort, in the
worst case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
13. What is the number of comparisons required to sort n elements using selection sort, in the
worst case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
14. What is the number of comparisons required to sort n elements using bubble sort, in the worst
case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(log2n)
15. What is the number of comparisons required to sort n elements using insertion sort, in the best
case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(1)
16. What is the number of comparisons required to sort n elements using selection sort, in the best
case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O(1)
17. What is the number of comparisons required to sort n elements using bubble sort, in the best
case?
(a) O(n) (b) O(n2)
(c)  O(nlog2n) (d) O (1)
18. Which of the following is in-place algorithm?
(a) Selection sort (b) Bubble sort
(c)  Insertion sort (d) All the above
19. P, Q and R are pointer variables. The statements below are intended to swap the contents of the
nodes pointed by P and Q. Rewrite it so that it will work as intended.
P = Q;    R = Q;   Q = R;
(a) R=Q;  P=R;   Q=R;                         (b) R=P;   P=P;   Q=Q;
(c) P=P;   P=Q;   R=Q;   (d) R=P;   P=Q;   Q=R;
20. Which of the following are differences between structures and arrays?
(a) Structures are derived data types and arrays are user defined.
(b) Structure can be declared whereas arrays are to be defined and declared
(c) Structures can contain elements that are pointers but arrays cannot
(d) Structures can be passed by value while arrays are to be passed by address
21. Which of the following pairs of statements are identical?
(a) (*ptr).element and ptr->element
(b) *ptr->element and (*ptr).element
(c) ptr.element and ptr->element
(d) ptr.element and *ptr->element
22. Suppose that a selection sort of 100 items has completed 42 iterations of the main loop. How
many items are now guaranteed to be in their final spot (never to be moved again)?
(a) 21 (b) 41
(c) 42 (d) 0
23. Suppose that a bubble sort of 100 items has completed 42 iterations of the main loop. How
many items are now guaranteed to be in their final spot (never to be moved again)?
(a) 21 (b) 41
(c) 42 (d) 0
24. Suppose we are sorting an array of ten integers using some quadratic sorting algorithm. After
four iterations of the algorithm's main loop, the array elements are ordered as shown here: 1 2
3 4 5 0 6 7 8 9. Which statement is correct? (Note: Our selection sort picks largest items
first.)
(a) The algorithm might be either selection sort or insertion sort.
(b) The algorithm might be selection sort, but could not be insertion sort.
(c) The algorithm might be insertion sort, but could not be selection sort.
(d) The algorithm is neither selection sort nor insertion sort
25. Suppose we are sorting an array of ten integers using some quadratic sorting algorithm. After
four iterations of the algorithm's main loop, the array elements are ordered as shown here: 2 4
5 7 8 1 3 6.Which statement is correct? (Note: Our selection sort picks largest items first.)
(a) The algorithm might be either selection sort or insertion sort.
(b) The algorithm might be selection sort, but could not be insertion sort.
(c) The algorithm might be insertion sort, but could not be selection sort.
(d) The algorithm is neither selection sort nor insertion sort
26. When is insertionsort a good choice for sorting an array?
(a) Each component of the array requires a large amount of memory.
(b) Each component of the array requires a small amount of memory.
(c) The array has only a few items out of place.
(d) The processor speed is fast.
27. A sort which compares adjacent elements in a list and switches where necessary is 
(a) Insertion sort (b) Bubble sort
(c) Selection sort (d) All the above
28. The correct order of the efficiency of the following sorting algorithms according to their overall
running time comparison is 
(a) Insertion>Selection>Bubble (b) Bubble>Selection>Insertion
(c) Selection>Insertion>>Bubble (d) Selection>Bubble>Insertion
29. The number of swaps needed to sort the numbers 10, 20, 30, 40, 50 in ascending order, using
bubble sort is
(a) 5 (b) 0
(c) 10 (d) 3
30. The number of swaps needed to sort the numbers 10, 20, 30, 40, 50 in ascending order, using
selection sort is
(a) 5 (b) 0
(c) 10 (d) 3
31. Which among the following is the best when the list is already sorted?
(a) Insertion sort (b) Bubble sort
(c) Selection sort (d) All the above
32. The number of interchanges required to sort 5, 1, 6, 2, 4 in ascending order using bubble sort
is
(a) 6 (b) 5
(c) 7 (d) 8
33. The complexity of multiplying two matrices of order m*n and n*p is
(a) mnp (b) mp
(c) mn (d) np
34. Which of the following sorting methods would be most suitable for sorting a list which is almost
sorted?
(a) Insertion sort (b) Bubble sort
(c) Selection sort (d) All the above
35. If the address of A[1][1] and A[2][1] are 1000 and 1010 respectively and each element occupies 2
bytes then the array has been stored in order.
(a) row major (b) column major
(c) matrix major (d) none of these
36. What is maximum number of dimensions in C?
(a) two
(b) three
(c) four
(d) theoretically no limit. It will depend on compiler and memory
37. While passing an array to function, the function call must have the 
(a) array name with brackets (b) array name with its size
(c) array name alone (d) all the above
38. Parameter passing mechanism for an array is 
(a) call by value (b) call by address
(c) both (a) and (b) (d) none of the above
39. Consider the statement
int a[2][3] = {10, 20, 30, 40, 50, 60};
What will be value of a[1][1]
(a) 20 (b) 40
(c) 50 (d) 60
40. What will be output of following program?
void swap(int, int);
void main( )
{
int a=10, b=20;
swap(a, b);
printf(“%d%d”, a, b);
}
void swap (int a, int b)
{
int t;
t=a;
a=b;
b=t;
}
(a) 10 20 (b) 20 10
(c) 10 10 (d) 20 20
41. What will be output of following programs?
void swap(int *, int *);
void main( )
{
int a=10, b=20;
swap(&a, &b);
printf(“%d%d”, a, b);
}
void swap(int *p, int *q)
{
t=*p;
*p=*q;
*q=t;
(a) 10 20 (b) 20 10
(c) 10 10 (d) 20 20
42. What will be output of the following programs?
void f(int, int *);
void main( )
{
int a=10, b=20;
if(a, &b);
printf(“%d%d”, a, b);
}
void f(int x, int *p)
{
x=x+10;
*p = *p *x;
}
(a) 10 20 (b) 20 10
(c) 20 400 (d) 10 400
43. What will be output of the following program?
int f (int);
void main( )
{
int a=10, b;
b=f(a);
printf(“%d”, b);
}
int f (int a)
{
return (a==10)
}
(a) 1 (b) 0
(c) 10 (d) error
44. What will be output of the following program?
void main( )
{
int a=10, b=20;
int *p;
p=&a;
printf(“%d”, *p);
p=&b;
printf(“%d”, *p);
}
(a) 10 20 (b) 20 10
(c) 10 10 (d) 20 20
45. What will be the output of the following program?
void main( )
{
int a=10, *p, **q;
p=&a; q=&p;
printf(“%d%d”, *p, **q);
}
(a) 10 20 (b) 10 10
(c) 10 garbage (d) garbage 10
46. The address of the starting element of an array is 
(a) represented by subscripted variable of the starting element
(b) cannot be specified
(c) represented by the array name
(d) not used by the compiler
47. Indentify the correct declaration in C
(a) int a[10][10]; (b) int a[10, 10]; (c) int a(10) (10); (d) int a (10, 10);
48. Maximum number of elements in the declaration int y[5][8]; is
(a) 28 (b) 32 (c) 35 (d) 40
49. Indentify the wrong expression given int a[10];
(a) a[–1] (b) a[10] (c) a[0] (d) ++a
50. What is the value of a[0][2] in int a [3][4] = {{1,2}, {4,8,15}} ?
(a) 4 (b) 2 (c) 0 (d) not defined
51. The declaration float f[ ] [3] = {{1,0}, {2,0}, {3,0}}; represents
(a) a one-by-three array (b) a three-by-one array
(c) athee-by-three array (d) a one–by–one array
52. A char array with the string value "aeiou" can be initialized as
(a) char s[ ] = {'a', 'e', 'i', 'o', 'u'} (b) char s [ ] = "aeiou";
(c) char s[ ] = {'a', 'e', 'i', 'o', 'u', '/0'} (d) options (b) and (c)
53. Indentify the correct statement.
(a) Float array can be read as a whole
(b) Integer array can be read as a whole
(c) Char array can be read as a whole
(d) Double array can be read as a whole
54. Indentify the correct statement.
(a) Float array can be displayed by using single prinf( ) without using a loop.
(b) Integer array can be displayed by using single prinf( ) without using a loop.
(c) Char array can be displayed by using single prinf( ) without using a loop.
(d) Double array can be displayed by using single prinf( ) without using a loop.
55. In a multi-dimensional array with initialization
(a) the rightmost dimension may be omitted
(b) the leftmost dimension may be omitted
(c) nothing must be omitted
(d) allmay be omitted
56. x [2] = 5;
2 [x] = 5;
Are x [2] and 2 [x] identical in the sample code above? Why or why not?
(a) No. Both variable assignments have invalid syntax.
(b) No. x [2] is correct, but 2[x] is invalid syntax.
(c) Yes. Both are identical because they are resolved to pointer references.
(d) No. 2[x] is correct, but x [2] is invalid syntax.
57. char sub [ 10 ] = ????;
Which of the following statements cannot be used to replace the ????in the above syntax to
intialize sub with the string "Maths"?
(a) {"Maths"} (b) {'M', 'a', 't', 'h', 's', '\0'} (c) {'M' "aths"} (d) {"Mat" "hs"}
58. int booklet [3] [2] [2] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
What value does booklet [2] [1] [0] in the sample code above contain?
(a) 5 (b) 7 (c) 9 (d) 11
59. What is the result of the following declaration?
int A [ ] = {1, 2, 3, 4, 5};
& A [5] – &A[1];
(a) 8 (b) –4 (c) 4 (d) –8
60. char name [ ] = {'n', 'a', 'm', 'e' };
printf("name = %s\n", name);
What will be the output?
(a) name = name
(b) name = name followed by junk characters
(c) name = \nname
(d) option (a) or (b)
61. What would be the result of the following program?
main( )
{
char p [ ] = "string";
char t;
inti, j;
for(i=0, j = strlen(p); i<j;i++)
{
t = p[i];
p[i] = p[j– i];
p[j–i] = t;
}
printf(“%s”, p);
}
(a) will print : string
(b) will not print anything since p wil be pointing to a null string
(c) will print : gnirts
(d) will result in a complication error
62. What is the output of the program?
main( )
{ int rows = 3, columns = 4;
int a [rows] [columns] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
i = j = k = 99;
for(i=0;i<rows;i++)
for(j=0;j<columns;j++)
if (a[i] [j]<k) k = a[i] [j];
printf ("% d\n", k); }
(a) syntax error (b) runtime error
(c) 1 (d) none of the above
63. What is the value of i in the following code?
main( )
{
inti = strlen ("BLUE") + strlen ("purple") / strlen ("red") – strlen ("green");
printf("%d", i);
}
(a) –2 (b) 1 (c) –1.666667 (d) –1
64. The function strcpy (s1, s2) in string.h
(a) copies s1 to s2 (b) copies s2 to s1
(c) appends s1 to end of s2 (d) appends s2 to end of s1
65. The function strcat (s1, s2) in string.h
(a) copies s1 to s2 (b) copies s2 to s1
(c) appendss1 to end of s2 (d) appends s2 to end of s1
66. The function strcmp (s1, s2) returns zero
(a) if s1 is lexicographically less than s2
(b) if s1 is lexicographically greater than s2
(c) if both s1 and s2 are equal
(d) if s1 is empty string
67. void show( );
main ( )
{
show( );
}
void show(char *s)
{
printf("%s\n", s);
}
What will happen when the above code is compiled and executed using a strict ANSI C
compiler?
(a) It will compile and nothing will be printed when it is executed.
(b) It will compile, but not link.
(c) The compiler will generate an error
(d) The compiler will generate a warning.
68. char var1 [10];
char var2 [5] = "Angle";
strcpy (var1, var2);
What will happen when the above code is executed?
(a) The linker will reject this as an array overflow error
(b) The variable var1 and var2 will contain the string "Angle" and no problems will occur
(c) The compiler will reject it because only string pointers can be initialized this way
(d) The variable var2 will contain the word "Angle", but the behaviour of strcpy is undefined
69. What does strncat append to the target string after the specified number of characters have
been copies?
(a) Nothing (b) NULL (c) \0 (d) –0
70. intstrcmp (s1, s2) compares strings s1 and s2 and
(a) returns a value less than zero if s2 is lexicographically greater than s1
(b) returns zero if s1 is lexicographically less than s2.
(c) returns 1 if s1 is equal to s2.
(d) returns a value less than zero if s1 is lexicographically greater than s2.
71. C allows
(a) only call by value
(b) only call by address
(c) both(a) and (b)
(d) only call by value and sometimes call by reference
72. What is the output of the following code?
main( )
{
int x = 80, a = –80;
void swap(int, int);
swap (x, a);
printf("numbers are %d\t%d", a, x),
}
void swap(int y, int b)
{
int t = y;
y = b;
b = t;
}
(a) numbers are 80 –80 (b) numbers are 80 80
(c) numbers are –80 80 (d) numbers are –80 –80
73. Pointer variable may be assigned
(a) an address value represented in hexadecimal
(b) an address value represented in octal
(c) the address of another variable
(d) An address value represented in binary
74. A pointer value refers to
(a) an integer constant (b) a float value
(c) any valid address in memory (d) and ordinary variable
75. Identify the correct declaration of pointer variables p1, p2.
(a) int p1, p2; (b) int *p1, p2; (c) int p1, *p2; (d) int *p1, *p2;
76. The operators exclusively used in connection with the pointers are
(a) * and/ (b) & and * (c) & and | (d) – and >
77. Identify the invalid expression.
(a) &274 (b) &(a +b) (c) &(a*b) (d) all of the above
78. Identify the wrong declaration statement.
(a) int *p, a = 10; (b) int a = 10, *p = &a;
(c) int *p = &a, a = 10; (d) option (a) and (b)
79. Identify the invalid expression for given float x = 2.14, *y = &x;
(a) &y (b) *&x (c) **&y (d) (*&)x
80. The operand of the address of operator is
(a) a constant (b) an expression
(c) a named region of storage (d) a register variable
81. How does compiler differentiate address operator from bitwise AND operator?
(a) by using the number of operands and position of operands
(b) by seeing the declarations
(c) both options a and b
(d) by using the value of the operand
82. How does compiler differentiate indirection operator from multiplication operator?
(a) by using the number of operands (b) by seeing the position of operand
(c) both options (a)and (b) (d) by using the value of the operand
83. The address of operator returns
(a) the address of its operand (b) lvalue
(c) both options (a) and (b) (d) rvalue
84. The indirection operator returns
(a) the data object stored in the address represented by its operand
(b) rvalue
(c) both options (a) and (b)
(d) lvalue
85. The operand of indirection operator is
(a) pointer variable (b) pointer expression
(c) both options (a) and (b) (d) ordinary variable
86. The operand of address of operator may be
(a) an ordinary variable (b) an array variable
(c) a pointer variable (d) Any one of the above
87. Identify the invalid lvalue given int x, *p = &x;
(a) *(p + 1) (b) *(p – 3)
(c) both options (a) and (b) (d) &x
88. After the execution of the statement int x; the value of x is
(a) 0 (b) undefined (c) 1 (d) –1
89. Pointer variable may be initialized using
(a) static memory allocation (b) dynamic memory allocation
(c) both options (a) and (b) (d) a positive integer
90. Assume 2 bytes for int, 4 bytes for float and 8 bytes for double data types respectively, how
many bytes are assigned to the following pointer variables?
int *ip; float *fp; double *dp;
(a) 2 bytes for ip, 4 bites for fp and 8 bytes for dp
(b) 2 bytes for all pointer variables ip, fp and dp
(c) one byte for ip, 2 bytes for fp and 4 bytes for dp
(d) 2 bytes for ip and 8 bytes for each fp and dp
91. The number of arguments used in malloc( ) is
(a) 0 (b) 1 (c) 2 (d) 3
92. The function used for dynamic deallocation of memory is
(a) destroy( ) (b) delete( ) (c) free( ) (d) remove( )
93. In the expression *cp++
(a) *cp is evaluated first and *cp is incremented by 1
(b) *cp is evaluated first and cp is incremented by 1
(c) cp is incremented by 1 first and * is applied
(d) cp is incremented by 1 first and * is applied to the previous value of cp
94. The pointers can be used to achieve
(a) call by function (b) call by reference (c) call by name (d) call by procedure
95. The operators &, *, ++ and – – have
(a) same precedence level and same associativity
(b) same associativity and different precedence level
(c) different precedence level and different associativity
(d) different precedence level and same associativity
96. Indentify the invalid expression for given syntax :
floatfnum [10], * fptr = fnum;
(a) fnum + 4 (b) fptr [4] (c) fnum = + + fptr (d) &fnum [4]
97. Identify the correct statement for given expression
floatfnum [ 10 ];
(a) fnum is a pointer variable.
(b) fnum is a fixed address and not a variable
(c) fnum is an array variable
(d) fnum is an address that can be modified
98. Give the declaration double prec [5]; the address of the element prec [2] is obtained by
(a) &prec [2] (b) prce +2
(c) both options (a) and (b) (d) * (prec + 2)
99. Given the declaration intprec [5]; the element prec [2] is accessed by
(a) prec [2] (b) prec + 2
(c) * (prec + 2) (d) both options a and b
100. Given float x [5] [5]; the address of the element x [2] [3] is obtained by
(a) &x[2] [3] (b) x [2] + 3 (c) * (x + 2) + 3 (d) all the above
101. Given char s [4] [10]; the element s [2] [4] is accessed by
(a) s[2] [4] (b) *(s[2] + 4) (c) *(*(s + 2)+4) (d) all the above
102. Given int a [5] [5]; identify the correct expression, yielding the starting element.
(a) * a [0] (b) ** a (c) a [0] [0] (d) all the above
103. Givenint x [5] [10] [8]; find the address of the element x [2][3][5].
(a) x [2][3] + 5 (b) * (x [2] + 3) + 5 (c) *(*(x+2)+3)+5 (d) all the above
104. Given int x [5][5][5]; find the value of the element x [2][3][4].
(a) *(x[2][3] + 4) (b) *(*(x[2] + 3) + 4)
(c) *(*(*(x + 2)+ 3) + 4) (d) all the above
105. Given int a [5]; how to declare array in the function definition if the function call is sort(a)?
(a) sort(int *a) (b) sort(int a[5])
(c) both operations a and b (d) sort(int a)
106. Givenint *p1, **p2, ***p3, v = 25;
p1 = &v; p2 = &p1; p3 = &p3;
how to obtain the value of v using pointer variable?
(a) *p1 (b) **p2 (c) ***p3 (d) all the above
107. The declaration float * a [5]; is
(a) an ordinary array (b) a pointer to an array
(c) an array of pointers (d) pointer to an array
108. Array of pointers such as int *p[5]; is used for
(a) fixed row size and varying column size
(b) fixed row size and fixed column size
(c) varying row size and fixed column size
(d) varying row size and varying column size
109. Pointer to array such as int (*a) [8]; is used for
(a) fixed row size and varying column size
(b) fixed row size and fixed column size
(c) varying row size and fixed column size
(d) varying row size and varying column size
110. Given float x [5][5]; float (*y) [5]; the assignment of the array x to the pointer variable y may
be done as 
(a) y = &x; (b) y = x; (c) y [0] = x; (d) *y = x;
111. Given float x [5][10], *y [5]; the assignment of the array x to y is done as 
(a) y = x; (b) y [0] = x; y [1]; ....; y [4] = x [4];
(c) y [0] = x [0] = x[1]; y [1]; y [4] = x [4]; (d) both options (b) and (c)
112. Given char *p = "ANSI C"; identify the expression returning the value C.
(a) p[5] (b) *("ANSI C" + 5) (c) "ANSI C" [5] (d) all the above
113. Identify the invalid assignment, for given int *p, x;
(a) p = 0;
(b) p = 255864 u;
(c) p = &x;
(d) *p = 10; /* assume valid pointer is already assigned to;*/
114. The operations that can be performed on pointers are
(a) addition or subtraction of a pointer and an integer
(b) assignment of pointer using pointer expression
(c) assignment of the value 0 to a pointer
(d) all the above
115. The invalid address arithmetic is (are)
(a) adding two pointers (b) multiplying two pointers
(c) dividing two pointers (d) all the above
116. The invalid pointer arithmetic is (are)
(a) shifting pointers using shift operators
(b) addition of float or double values to printers
(c) both options (a) and (b)
(d) incrementing pointers
117. When applied to a variable, what does the unary "&" operator yield?
(a) the variable's value (b) the variable's address
(c) the variable's format (d) the variable's right value
118. Which of the following is the most accurate statement about runtime memory?
1. Memory is allocated by using malloc( )
2. Memory is freed by a garbage collector
3. Allocated memory can be freed by calling free ( )
(a) option 1 only (b) option 2 only
(c) both options 1 and 2 (d) both options 1 and 3
119. Which of the following is True about pointers?
1. Pointers do not require memory storage.
2. The size of a pointer depends on the type of the variable it points to.
(a) option 1 only (b) option 2 only
(c) options 1 and 2 (d) neither option 1 nor 2
120. If ptr1 and ptr2 are valid pointers in the same array, then which of the following statements is
valid?
(a) ptr1 + 2 (b) ptr1 – ptr2
(c) ptr1 * ptr2 (d) both options (a) and (b)
121. char *x = NULL;
printf ("%s \n", x);
What will be the behaviour of the sample code above?
(a) This will not compile. A pointer cannot be initialized to NULL.
(b) The result will fall into "undefined behaviour" and be unpredictable.
(c) A "0" will be printed
(d) Nothing will be printed
122. char base [5] = "a";
const char *ptr;
Given the above, which of the following statements is legal?
(a) ptr = base; (b) *ptr = "a"; (c) *ptr = base; (d) ptr = 'a';
123. char *ptr;
char string [ ] = "project";
ptr = string;
ptr += (ptr + 5);
What string does ptr contain in the sample code above?
(a) ct (b) ject
(c) oject (d) Unknown. This code is incorrect
124. Scrutinize the following code in C.
char fruit [ ] = "orange”;
char *ptr;
ptr = fruit;
What will be the output for the following expression?
printf ("%c" , *( ptr + 2 ) );
(a) r (b) a (c) n (d) none
125. In the given code:
int a [50];
int *ptr;
ptr = a;
To access the 7th element of the array which of the following is incorrect?
(a) *(a + 6) (b) a [6] (c) ptr[6] (d) All the above
126. main( )
{
int a [5] = {–2, –1, 3, 4, 5};
int * b;
b = &a [2];
}
Then the value of b [–1] is:
(a) 4 (b) 3 (c) –1 (d) –2
127. main( )
{
int a = 5, *ptr; ptr = &a;
printf("%d", ++*ptr);
}
The output might be:
(a) 6 (b) 5 (c) 0 (d) none
128. int x [ ] = {1, 2, 3, 4, 5};
int *ptr, **ptr2;
ptr = x;
ptr2 = &ptr;
Referring to the sample code above, how would you update x[2] to 10 using ptr2?
(a) ** (ptr2 + 2)=10; (b) *(&ptr2 + 2)=10;
(c) * (*ptr2 + 2)=10; (d) (** ptr2 + 2)=10;
129. main( )
{
char x[25], y[25] , *p = y;
strcpy (x, "TOWER");
strcpy (y, "SHOWER");
p = x;
* p = 'p';
printf("%s/n", p);
}
What will be the output when the sample code above is executed?
(a) TOWER (b) POWER (c) SHOWER (d) RTOWER
130. Which statement correctly defines a character string with a length of 4 plus 1 for the terminating
NULL?
(a) char string [ ]; (b) char string [4];
(c) char * string [5]; (d) char string [5];
131. Given that a is an array of elements of type t, val is lvalue expression of type "pointer to t" that
points to elements in a then * + + val
(a) setsval to point to the next element in a
(b) incrementsval and then references the value in a, that val points to
(c) references the value in a, that val points to and then increments val
(d) references the element of a that val points to.
132. int y[4] = {6, 7, 8, 9};
int *ptr = y + 2;
printf("%d\n", ptr[1]);
What is printed when the sample code above is executed?
(a) 7 (b) 8
(c) 9 (d) The code will not compile.
133. printf("%s\n", string);
Which of the following initializations for the string variable will cause the code above to print
the string, "First grade actor" when executed without memory leaks or memory overwrite?
(a) char *string = mallco(100); (b) char string[ ] = "Hello again";
string = "First grade actor"; string = "First grade actor";
(c) char * string = "Hello again"; (d) char string [100];
string = "First grade actor"; string = "First grade actor";
134. What memory function should be used to allocate memory in which all bits are initialized to 0?
(a) calloc (b) malloc (c) alloc (d) memalloc
135. What is the primary difference between the malloc and calloc functions?
(a) Memory allocated by calloc does not need to be freed and memory allocated by malloc
does
(b) Calloc returns a pointer to char and malloc returns a void pointer
(c) Calloc initializes the memory returned and malloc does not
(d) Calloc can allocate memory for an array and malloc cannot
136. int *ptr = (int *) malloc (sizeof (int));
ptr += 3;
If ptr points to be memory location 1000 and after execution of the statement ptr + = 3, ptr will
point to the memory location. (Assume 16 bits for int).
(a) 1006 (b) 1003 (c) 1010 (d) none
137. int x = 1;
int*ptr = malloc (size of (int));
ptr = &x;
x = 2;
* ptr = 3;
Is there anything wrong with the above code?
(a) No, x will be set to 2 (b) No, x will not set to 3
(c) Yes, there will be a memory overwrite (d) Yes, there will be a memory leak
138. In the declaration int x [3][2][2] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};
*(*(*(x + 2) + 1) + 1) represents
(a) the element 13 (b) the element 9
(c) the address of the element of 8 (d) the address of the element of 9
139. void fn(int *a, int *b)
{
int *t; t = a;
a = b;
b = t;
}
main( )
{
int a = 2; void fn( );
int b = 3;
fn (&a, &b);
printf("%d % d\n" , a, b);
}
What will be the output?
(a) Error at tuntime (b) Compilation error (c) 2 3 (d) 3 2
140. What is the result of the expression for the following declaration?
int A [ ] = {1, 2, 3, 4, 5};
*A + 1 – *A + 3
(a) 2 (b) –2 (c) 4 (d) none of the above
141. Which are valid?
(i) Pointers can be added
(ii) Pointers can be subtracted
(iii) Integers can be added to pointers
(a) all correct (b) only options (i) and (ii)
(c) only option (iii) (d) only options (ii) and (iii)
142. x = malloc(y). Which of the following statements is correct?
(a) x is the size of the memory allocated
(b) y points to the memory allocated
(c) x points to the memory allocated
(d) none of the above
143. p and q are pointers to the same type of data items. Which of these are valid?
(i) *(p + q) (ii) *(p – q) (iii) *p – *q
(a) all (b) options (i) and (ii)
(c) option (iii) is valid (d) none of the above
144. main( )
{
char *name = "name";
change (name);
printf ("%s", name);
}
change (char *name)
{
char *nm = "newname";
name = nm;
}
What is the output?
(a) name (b) newname
(c) name = nm not valid (d) function call invalid
145. What will be the result of the following program?
main( )
{
char *x = "String";
char y[ ] = "add";
char *z;
z = (char *) malloc (sizeof (x) + sizeof (y) – 1);
strcpy (z, y);
strcat (z, y);
printf ("%s + %s = %s" , y, x, z);
}
(a) add + String = AddString (b) syntax error during compilation
(c) run time error/core dump (d) add + String = addadd
146. What will be the result of executing following program?
main( )
{
char *x = "New";
char *y = "Dictionary";
char *t;
void swap (char * , char *);
swap (x, y);
printf ("(%s, %s)", x, y);
t = x;
x = y;
y = t;
printf ("– (%s, %s)", x, y);
}
void swap (char *x, char *y)
{
char *t;
t = x;
x = y;
y = t;
}
(a) (New, Dictionary) – (New, Dictionary)
(b) (Dictionary, New) – (New, Dictionary)
(c) (New, Dictionary) – (Dictionary, New)
(d) (Dictionary, New) – (Dictionary, New)
147. Which of the following is the correct output for the program given?
main( )
{
charstr [ ] = "Sales\0man\0";
printf (" %d %s %d \n", sizeof (str), str, strlen (str) );
}
(a) 5 Sales 5 (b) 11 Sales 9 (c) 11 Sales man 9 (d) 11 Sales 5
148. Which of the following is the correct output for the program given?
charstr [7] = "strings"; printf("%s", str);
(a) error (b) strings
(c) cannot predict (d) none of the above
149. If sizes of a char, an int, a float and a double are 1, 4, 4 and 8 bytes respectively, which of the
following is the correct output for the program given below?
{
charch = 'A';
printf("%d %d %d", sizeof (ch), sizeof (sizeof ('A') ), sizeof (int) );
}
(a) 1 4 2 (b) 1 4 4 (c) 2 2 4 (d) 2 4 8
150. What is the value of str3 and str1?
void main( )
{
charstrl [1000] = "Pune";
char *str2 = "Warriors";
char *str3;
str3 = strcat (str1, str2)
printf ("\n%s", str3);
}
(a) compilation error because stract does not return a value
(b) PuneWarriors
(c) Warriors Pune
(d) None of the above
151. char *a = "23422";
printf("%d %d", sizeof(a), strlen(a));
From the above, what is the output of the printf function?
(a) 4 4 (b) 5 5 (c) 5 4 (d) 4 5
152. Consider the following declarations :
char *a;
char a[5];
Which of the following statements is/are true?
1. Both are pointer type
2. Second case store a string, first cannot
3. The value of a in declaration char a[5] can be changed later
(a) (2) only (b) (1) only (c) (1) and (2) (d) (2) and (3)
153. What will strcmp return, if both the strings are equal?
(a) boolean TRUE (b) 0 (c) 2 (d) 1
154. What does strlen( ) return for the following character array?
charstr[ ] = “Pune\0Univ”
(a) 5 (b) 6 (c) 4 (d) 7
155. Structure is a 
(a) scalar data type (b) user defined
(c) both options (a) and (b) (d) primitive data type
156. Structure is a data type in which
(a) each element must have the same data type
(b) each element must have pointer type only
(c) each element may have different data type
(d) no element is defined.
157. C provides a facility for user defined data type using
(a) pointer (b) function (c) structure (d) array
158. The keyword used to represent a structure data type is
(a) structure (b) struct (c) struc (d) structr
159. Identify the wrong syntax.
(a) typedefstruct {member declaration; } NAME; NAME V1, V2;
(b) typedefstruct tag {member declaration;} NAME; NAME V1, V2;
(c) typedefstruct {member declaration;} NAME; NAME V1, V2;
(d) typedefstruct tag {member declaration;} NAME; tag V1, V2;
160. Identify the wrong syntax.
(a) struct tag {member declaration;};
(b) struct tag {member declaration;} V1, V2;
(c) struct tag {member declaration;}
(d) struct tag {member declaration;} V1, V2;
161. The operator used to access the structure member is
(a) * (b) . (c) [] (d) &
162. A structure
(a) can be read as a single entity.
(b) cannot be read as a single entity.
(c) can be displayed as a single entity
(d) has member variables that cannot be individually read.
163. A structure can have
(a) pointers as its members (b) scalar data type as its members
(c) structure as its members (d) all the above
164. The structure declaration
struct person { char name [20]; int age; struct person woman;};
(a) is a valid nested structure (b) is not a valid nested structure
(c) uses an invalid data type (d) is a self-referntial structure
165. A structure
(a) allows array of structure (b) does not allow array of structures
(c) does not use array as its members (d) is a scalar data type
166. In a structure 
(a) initialization of structure members is possible
(b) initialization of array of structures isnotpossible
(c) both options (a) and (b)
(d) initialization of structure members is not possible
167. The operator exclusively used with pointer to structure is
(a) . (b) -> (c) [ ] (d) *
168. If one or more members of a structure are pointer to the same structure, the structure is known
as 
(a) nested structure (b) invalid structure
(c) self-referential structure (d) structured structure
169. If one or more members of a structure are other structures, the structure is known as
(a) nested structure (b) invalid structure
(c) self-referential structure (d) unstructured structure
170. The changes made in the members of a structure are not available in the calling function if
(a) pointer to structure is passed as argument
(b) the members other than pointer type are passed as arguments
(c) structure variable is passed as argument
(d) both options b and c
171. The changes made in the members of a structure are available in the calling function if 
(a) pointer to structure is passed as argument
(b) structure variable is passed
(c) the members other than pointer type are passed as arguments
(d) both options a and c
172. Identify the wrong statement.
(a) Structure variable can be passed as argument.
(b) Pointer to structure can be passed as argument.
(c) Member variable of a structure can be passed as argument
(d) None of the above
173. Union is
(a) a special type structure (b) a pointer data type
(c) a function data type (d) not a data type
174. Union differs from structure in the following way:
(a) All members are used at a time
(b) Only one member can be used at a time
(c) Union cannot have more members.
(d) Union initializes all members as structure.
175. Identify the correct statement.
(a) Unions can be members of structures
(b) Structures can be members of unions.
(c) Both options a and b
(d) Structure can not be a member of union
176. What is not possible with union?
(a) Array of union (b) Pointer to union
(c) Self-referential union (d) None of the above
177. Structure is used to implement the data structure.
(a) stack (b) queue (c) tree (d) all the above
178. The nodes in a linked list are implemented using
(a) self–referential structure (b) nested structure
(c) array of structure (d) ordinary structure
179. About structures which of the following is true.
1. Structure members are aligned in memory depending on their data type.
2. The size of a union is not be equal to the sum of the sizes of its members.
(a) only option 1 (b) only option 2
(c) both options 1 and 2 (d) neither option 1 nor 2
180. struct date
{
int day;
int month;
int year;
};
main( )
{
struct date *d;
...
++ d–> day; /*statementN*/
}
Then the statement ‘statementN’ 
(a) increments the pointer to point the month (b) increment the value of day
(c) increment d by sizeof (struct date) (d) none
181. structcust _record
{
long cust_no;
char cust_name [31];
double current bal;
} CUST_REC;
Is the sample code above, a usable structure variable declaration?
(a) Yes. CUST_REC can be used to access its members with the "–>" operator.
(b) No. A typedef must be added before "struct".
(c) Yes. CUST REC can be used to access its members with the "." operator.
(d) No. CUST REC must be in lowercase letters.
182. struct car
{
int speed;
char type [10];
} vehicle;
struct car *ptr;
ptr = &vehicle;
Referring to the sample code above, which of the following will make the speed equal to 200?
(a) (* ptr).speed = 200; (b) (*ptr) –> speed = 200;
(c) *ptr.speed = 200; (d) &ptr.speed = 200;
183. Consider the following structure.
structnumname
{
int no;
char name [25];
} ;
structnumname n1 [ ] = {
{12, "Raju"} ,
{15m "Seema'} ,
{18, "Rima"} ,
{21, "Nitin"} ,
} ;
The output for the following statement would be
printf ("%d, %d", n1 [2] . no, ( * (n1 + 2) ) . no);
(a) 18, ASCII value of p (b) 18, 18
(c) 18, ASCII value of r (d) 18, ASCII value of e
184. Which of the following will define a type NODE that is a node in a linked list?
(a) struct node
{
NODE *next;
int x;
} ;
typedefstruct node NODE;
(b) typedefstruct NODE
{
struct NODE *next;
int x;
} ;
(c) typedefstruct node NODE;
struct node
{
NODE *next;
int x;
} ;
(d) typedefstruct
{
NODE *next;
int x;
} NODE;
185. The size of the following union, where an int occupies 4 bytes of memory is
union arc
{
char x;
int y;
char ax [8];
} aha;
(a) 16 bytes (b) 13 bytes (c) 8 bytes (d) 4 bytes
186. Which is the valid declaration?
(a) #typedefstruct {inti;} in; (b) typedefstruct in {inti;};
(c) *typedefstructint {inti;}; (d) typedefstruct { inti; } in;
187. The following statement is
“The size of a union is always equal to the sum of the sizes of its members”.
(a) true (b) false
(c) can't say (d) insufficient information
188. structadr
{
char *name;
char * city;
int zip;
} ;
structadradradr;
Which are the valid references?
(i) adr–> name (ii) adradr –> name (iii) adr . zip (iv) adradr . zip
(a) option (i) and (iii) (b) option (ii) only
(c) options (ii) and (iv) (d) option (iv) only
189. structst
{
int x;
int y;
} abc;
You cannot access x by the following:
(1) abc –> x; (2) abc [0] –> x; (3) abc . x; (4) (abc) –> x;
(a) options 1, 2 and 4 (b) options 2 and 3
(c) options 1 and 2 (d) options 1, 3 and 4
190. What is the size of 'q' in the following program?
Assume int takes 4 bytes
union un
{
int x;
char y;
structst
{
char x;
char y;
intxy;
} p;
} q;
(a) 11 (b) 6 (c) 4 (d) 5
191. What is the output of the following code?
union un
{
int no;
char ch;
} u;
u . ch = '2';
u . no = 0;
printf ("%d", u . ch);
(a) 2 (b) 0 (c) null character (d) none
192. Which of these are valid declarations?
(i) union { (ii) union un {
inti; inti;
int j; int j;
} ; } u;
(iii) union { (iv) union un {
inti; inti;
int j; int j;
float x; } u;
} ;
(a) all are correct (b) options (i), (ii) and (iv)
(c) options (ii) and (iv) (d) option (ii) only
193. The output of the following program is
main( )
{ int x[ ] = {1, 2, 3, 4, 5, 6, 7, 8};
inti;
for(i=2; i<6; ++i)
x[x[i]]=x[i];
for(i=0;i<8; ++i)
printf(“%d”, x[i]);
(a) 1 2 3 3 5 5 7 8 (b) 1 2 3 4 5 6 7 8
(c) 8 7 6 5 4 3 2 1 (d) 1 2 3 5 4 6 7 8
194. Feature for accessing a variable through its address is desirable because 
(a) call by reference can be simulated
(b) a function can return more than one value
(c) excessive use of global variables can be avoided
(d) all the above
195. Choose the best answer.
Prior to using a pointer variable 
(a) it should be declared (b) it should be initialized
(c) it should be both declared and initialized (d) none of the above
196. A set of names can be represented as a 
(a) two-dimensional array of characters
(b) one-dimensional array of strings
(c) one-dimensional array of pointers to characters
(d) none of these
197. If arr is a two dimensional array of 10 rows and 12 columns, then arr[5] logically points to the

(a) sixth row (b) fifth row
(c) fifth column (d) sixth column
198. The statement
int **a;
(a) is illegal
(b) is legal but meaningless
(c) is syntactically and semantically correct
(d) none of the above
199. Consider the following declaration
int a, *b = &a, **c = &b;
The following program fragment
a = 4;
**c = 5;
(a) does not change the value of a (b) assigns address of c to a
(c) assigns the value of b to a (d) assigns 5 to a
200. Consider the two declarations:
void *voidPtr;
char *charPtr;
Which of the following assignments are syntactically correct?
(a) voidPtr = charPtr (b) charPtr = voidPtr
(c) *voidPtr = *charPtr (d) *charPtr = voidPtr
201. Which of the following operators can be applied to pointer variables(s)?
(a) Division (b) Multiplication
(c) Casting (d) None of these
202. Consider the following program fragment.
int v = 3, *pv = &v;
printf(“%d%d”, v, *pv);
The output will be
(a) an error message (b) 3 address of v
(c) 3 3 (d) none of the above
203. If the two statements
*pv = 0;
printf(“%d%d”, *pv, v);
are appended to the previous program format, then the output will be
(a) 0 3 (b) 0 0
(c) unpredictable (d) none of the above
204. A pointer variable can be 
(a) passes to a function as argument (b) changed within a function
(c) returned by a function (d) all the above
205. Consider the following program
main( )
{
char x[10], *ptr = x;
scanf(“%s”, x);
change(&x[4]);
}
change(char a[ ]);
{puts(a);)
If abcdefg is the input, the output will be 
(a) abcd (b) abc
(c) efg (d) garbage
206. For the previous problem the function calls
change(x); and change(ptr);
(a) serves the same purpose (b) the second call is illegal
(c) both the calls are illegal (d) none of the above
207. If x is an array of integer, then the value of &x[i] is same as that of 
(a) &x[i−1] + sizeof(int) (b) x + sizeof(int) * i
(c) x + i (d) ++(&x[i])
208. Pick the correct answers.
If x is an one dimensional array, then
(a) &x[i] is same as x + i − 1 (b) *(x + i) is same as * (&x[i])
(c) *(x + i) is same as x[i] (d) both (b) and (c)
209. Let x be an array. Which of the following can be present in the left hand side of an assignment
statement?
(a) x (b) x + i
(c) *(x + i) (d) &x[i]
210. Let x be an array. Which of the following operations are illegal?
(a) ++x (b) x + 1
(c) x++ (d) x * 2
211. Consider the declaration
char x[ ] = “WHATIZIT”;
char *y = “WHATIZIT”;
Pick the correct answers.
(a) The output of puts(x) and puts(y) will be the same
(b) The output of puts(x) and puts(y) will be different
(c) The output of puts(y) is implementation dependent
(d) None of the above comments are true
212. Consider the declaration
int a = 5, *b = &a;
The statement
printf(“%d”, a * b);
prints
(a) 25 (b) garbage
(c) 5  address of b (d) an error message
213. In the previous question,printf(“%d”, a**b); prints
(a) 25 (b) garbage
(c) 0 (d) an error message
214. What is the output of the following program segment?
void max(int x, int y, int m)
{ if(x > 5) m = x;
else m = y;}
int main( )
{ inti = 20, j = 5, k = 0;
max(i, j, k); printf(“%d”, k); }
(a) 5 (b) 20
(c) 0 (d) none of the above
215. Choose the correct statements
(a) Array stores data of the same type (b) Array can be a part of a structure
(c) Array of structure is allowed (d) All the above
216. a -> b is syntactically correct if 
(a) a and b are structures
(b) a is a structure and b is a pointer to a structure
(c) b is a pointer to a structure in which a is a field
(d) a is a pointer to a structure in which b is a field
217. Which of the following comments about union are true?
(a) Union is a structure whose members share the same storage area
(b) Only one of the members of union can be assigned a value at a particular time
(c) Size allocated for union is the size of its member needing the maximum storage
(d) All the above
218. Consider the following program segment.
char *a, *b, c[10], d[10];
a = b;
b = c;
c = d;
d = a;
Choose the statements having errors.
(a) No error (b) a = b; and b = c;
(c) c = d; and d = a; (d) a = b; and d = a;
219. a << 1 is equivalent to 
(a) multiplying a by 2 (b) dividing a by 2
(c) adding 2 to a (d) none of the above
220. The most significant bit will be lost in which of the following operations?
(a) >> (b) complementation
(c) << (d) none of the above
221. Assume an unsigned integer occupies 1 byte. Let myVar be an unsigned integer. Then myVar<<
1 multiplies myVar by 2 if it is not greater than 
(a) 127 (b) 255
(c) 256 (d) 128
222. If the word size if 16 bit, then ~10 will be 
(a) −10 (b) −11
(c) +10 (d) +11
223. Which of the following operations produce an 1, if the input bits are 1 and 1?
(a) or (b) and
(c) exclusive or (d) both (a) and (b)
224. As soon as a pointer variable is freed, its value 
(a) is set to null (b) becomes unpredictable
(c) is set to 1 (d) remains the same
225. If p is a pointer to an integer and t is a pointer to a character then sizeof(p) will be 
(a) same as that of sizeof(t) (b) greater than that of sizeof(t)
(c) less than that ofsizeof(t) (d) none of the above
226. Sorting is useful for 
(a) report generation (b) responding to queries easily
(c) making searching easier and efficient (d) all the above
227. A sorting technique that guarantees, that records with the same primary key occurs in the same
order in the sorted list as in the original unsorted list is said to be 
(a) stable (b) consistent
(c) external (d) linear
228. You want to check whether a given set of items is sorted. Which of the following sorting
methods will be the most efficient if it is already in sorted order?
(a) Bubble sort (b) Selection sort
(c) Insertion sort (d) None of the above
229. Which of the following sorting methods will be the best if number of swappings done, is the
only measure of efficiency?
(a) Bubble sort (b) Selections sort
(c) Both (a) and (b) (d) None of the above
230.main( )
{
char s[6]=”HELLO”;
printf(“%c”, s[5];
}
What is the output of the above program?
(a) 0 (b) 48
(c) nothing (d) unpredictable
231. Identify the wrong statement.
(a) An array is a collection of data items of the same data type.
(b) An array declaration reserves memory space and structure declaration does not reserve
memory space.
(c) Array uses the keyword array in its declaration.
(d) A structure is a collection of data items of different data types.

1. (c) 2.(b) 3.(a) 4.(d) 5.(d) 6.(b) 7.(a) 8.(b) 9.(d) 10. (a)
11. (d) 12. (b) 13. (b) 14. (b) 15. (a) 16. (b) 17. (b) 18. (d) 19. (d) 20. (d)
21. (a) 22. (c) 23. (c) 24. (a) 25. (c) 26. (c) 27. (b) 28. (a) 29. (b) 30. (a)
31. (a) 32. (b) 33. (a) 34. (a) 35. (a) 36. (d) 37. (c) 38. (b) 39. (c) 40. (a)
41. (b) 42. (d) 43. (a) 44. (a) 45. (b) 46. (c) 47. (a) 48. (d) 49. (a) 50. (c)
51. (a) 52. (c) 53. (c) 54. (c) 55. (b) 56. (c) 57. (d) 58. (d) 59. (a) 60. (b)
61. (c) 62. (c) 63. (b) 64. (b) 65. (d) 66. (c) 67. (c) 68. (d) 69. (b) 70. (a)
71. (c) 72. (a) 73. (c) 74. (c) 75. (d) 76. (b) 77. (d) 78. (c) 79. (d) 80. (c)
81. (a) 82. (c) 83. (c) 84. (c) 85. (c) 86. (d) 87. (d) 88. (b) 89. (c) 90. (b)
91. (b) 92. (c) 93. (c) 94. (b) 95. (a) 96. (c) 97. (b) 98. (c) 99. (d) 100. (d)
101. (d 102. (d) 103. (d) 104. (d) 105. (c) 106. (d) 107. (c) 108. (a) 109. (c) 110. (b)
)
111. (d 112. (a) 113. (b) 114. (d) 115. (c) 116. (c) 117. (b) 118. (d) 119. (d) 120. (d)
)
121. (d) 122. (a) 123. (d) 124. (b) 125. (d) 126. (c) 127. (a) 128. (c) 129. (b) 130. (d)
131. (b) 132. (c) 133. (a) 134. (a) 135. (c) 136. (a) 137. (c) 138. (a) 139. (c) 140. (c)
141. (a) 142. (c) 143. (c) 144. (a) 145. (d) 146. (c) 147. (d) 148. (c) 149. (b) 150. (b)
151. (d) 152. (a) 153. (b) 154. (c) 155. (b) 156. (c) 157. (c) 158. (b) 159. (d) 160. (c)
161. (b) 162. (b) 163. (d) 164. (b) 165. (a) 166. (d) 167. (b) 168. (c) 169. (a) 170. (d)
171. (a) 172. (d) 173. (a) 174. (b) 175. (c) 176. (d) 177. (d) 178. (a) 179. (c) 180. (b)
181. (c) 182. (a) 183. (b) 184. (a) 185. (c) 186. (d) 187. (b) 188. (d) 189. (a) 190. (b)
191. (b) 192. (c) 193. (a) 194. (d) 195. (a) 196. (a) 197. (a) 198. (c) 199. (d) 200. (a)
201. (c) 202. (c) 203. (a) 204. (d) 205. (c) 206. (a) 207. (c) 208. (d) 209. (c) 210. (d)
211. (a) 212. (c) 213. (a) 214. (c) 215. (d) 216. (d) 217. (d) 218. (c) 219. (a) 220. (c)
221. (d) 222. (a) 223. (d) 224. (d) 225. (c) 226. (d) 227. (a) 228. (c) 229. (b) 230. (c)
231. (c)

You might also like