Presentation is loading. Please wait.

Presentation is loading. Please wait.

MC Question Strategies

Similar presentations


Presentation on theme: "MC Question Strategies"— Presentation transcript:

1 MC Question Strategies
Snooker Questions By Leon Schram, Plano Texas

2 Control Structures

3 01. Consider the following code segment.
int x = <some integer greater than zero> int n = 0; if (x < 500) { if (x > 750) n = 100; else n = 200; } if (x < 300) n = 300; System.out.println(n); What is printed as a result of executing the code segment? (A) Unknown without the value of x (B) 0 (C) 100 (D) 200 (E) 300

4 01. Consider the following code segment.
int x = <some integer greater than zero> int n = 0; if (x < 500) { if (x > 750) n = 100; else n = 200; } if (x < 300) n = 300; System.out.println(n); What is printed as a result of executing the code segment? (A) Unknown without the value of x (B) 0 (C) 100 (D) 200 (E) 300

5 02. Consider the following code segment.
int count = 10; for (int p = 0; p < 15; p+=3) { if (p % 2 == 0) count++; se count--; } System.out.println(count); What is printed as a result of executing the code segment? (A) 10 (B) 11 (C) 12 (D) 13 (E) 14

6 02. Consider the following code segment.
int count = 10; for (int p = 0; p < 15; p+=3) { if (p % 2 == 0) count++; else count--; } System.out.println(count); What is printed as a result of executing the code segment? (A) 10 (B) 11 (C) 12 (D) 13 (E) 14

7 Methods & Parameters

8 03. Consider the following program.
public class Question03 { public static void main (String args[]) int p = 10; int q = 20; swap(p,q); System.out.println(p + " " + q); } public static void swap(int x, int y) int temp = x; x = y; y = temp; What is printed as a result of executing the program? (A) (B) (C) (D) (E) 0 0

9 03. Consider the following program.
public class Question03 { public static void main (String args[]) int p = 10; int q = 20; swap(p,q); System.out.println(p + " " + q); } public static void swap(int x, int y) int temp = x; x = y; y = temp; What is printed as a result of executing the program? (A) (B) (C) (D) (E) 0 0

10 04. Consider the following program.
public class Question04 { public static void main (String args[]) int[ ] list = {1,2,3,4,5,6,7,8,9}; swap(list,3,4); System.out.println(list[3] + " " + list[4]); } public static void swap(int[ ] x, int p, int q) int temp = x[p]; x[p] = x[q]; x[q] = temp; What is printed as a result of executing the program? (A) 3 4 (B) 4 3 (C) 4 5 (D) 5 4 (E) ArrayIndexOutOfboundsException

11 04. Consider the following program.
public class Question04 { public static void main (String args[]) int[ ] list = {1,2,3,4,5,6,7,8,9}; swap(list,3,4); System.out.println(list[3] + " " + list[4]); } public static void swap(int[ ] x, int p, int q) int temp = x[p]; x[p] = x[q]; x[q] = temp; What is printed as a result of executing the program? (A) 3 4 (B) 4 3 (C) 4 5 (D) 5 4 (E) ArrayIndexOutOfboundsException

12 Boolean Logic

13 05. The Boolean expression
!((A < B) && (C > D)) is equivalent to which of the following expressions? (A) (A < B) || (C > D) (B) (A >= B) && (C <= D) (C) (A >= B) || (C <= D) (D) (A > B) && (C < D) (E) (A > B) || (C < D)

14 05. The Boolean expression
!((A < B) && (C > D)) is equivalent to which of the following expressions? (A) (A < B) || (C > D) (B) (A >= B) && (C <= D) (C) (A >= B) || (C <= D) (D) (A > B) && (C < D) (E) (A > B) || (C < D)

15 06. Consider the following code segment.
for (int k = 1; k <= 100; k++) { int n1 = (int) Math.random(); int n2 = (int) Math.random() * 4; boolean bool = n1 == n2; System.out.print(bool + " "); } What is printed as a result of executing the code segment? (A) The code segment always prints true. (B) The code segment always prints false. (C) The code segment prints true roughly 25% of the time and prints false roughly 75% of the time. (D) The code segment prints both true and false, but true more frequently. (E) The code segment prints both true and false, but false more frequently.

16 06. Consider the following code segment.
for (int k = 1; k <= 100; k++) { int n1 = (int) Math.random(); int n2 = (int) Math.random() * 4; boolean bool = n1 == n2; System.out.print(bool + " "); } What is printed as a result of executing the code segment? (A) The code segment always prints true. (B) The code segment always prints false. (C) The code segment prints true roughly 25% of the time and prints false roughly 75% of the time. (D) The code segment prints both true and false, but true more frequently. (E) The code segment prints both true and false, but false more frequently.

17 OOP Inheritance

18 (C) Person Constructor Student Constructor (E) Student Constructor
07. Person sue = new Person(25); Student tom = new Student(17,12); System.out.println(sue.getAge()); System.out.println(tom.getGrade()); class Person { private int age; public Person(int a) age = a; System.out.println("Person Constructor"); } public int getAge() return age;    class Student extends Person { private int grade; public Student(int g, int a) super(a); grade = g; System.out.println("Student Constructor"); } public int getGrade() return grade;  (C) Person Constructor Student Constructor (E) Student Constructor Person Constructor (E) Person Constructor What are the first 2 lines of program output?    (A) 25 17 (B) Student Constructor Student Constructor

19 (C) Person Constructor Student Constructor (E) Student Constructor
07. Person sue = new Person(25); Student tom = new Student(17,12); System.out.println(sue.getAge()); System.out.println(tom.getGrade()); class Person { private int age; public Person(int a) age = a; System.out.println("Person Constructor"); } public int getAge() return age;    class Student extends Person { private int grade; public Student(int g, int a) super(a); grade = g; System.out.println("Student Constructor"); } public int getGrade() return grade;  (C) Person Constructor Student Constructor (E) Student Constructor Person Constructor (E) Person Constructor What are the first 2 lines of program output?    (A) 25 17 (B) Student Constructor Student Constructor

20 (E) Person Constructor Student Constructor
08. Person sue = new Person(25); Student tom = new Student(17,12); System.out.println(sue.getAge()); System.out.println(tom.getGrade()); class Person { private int age; public Person(int a) age = a; System.out.println("Person Constructor"); } public int getAge() return age;    class Student extends Person { private int grade; public Student(int g, int a) super(a); grade = g; System.out.println("Student Constructor"); } public int getGrade() return grade; (C) 17 17 (D) 25 25 (E) Person Constructor Student Constructor What are the last 2 lines of program output?    (A) 25 17 (B) 17 25 

21 (E) Person Constructor Student Constructor
08. Person sue = new Person(25); Student tom = new Student(17,12); System.out.println(sue.getAge()); System.out.println(tom.getGrade()); class Person { private int age; public Person(int a) age = a; System.out.println("Person Constructor"); } public int getAge() return age;    class Student extends Person { private int grade; public Student(int g, int a) super(a); grade = g; System.out.println("Student Constructor"); } public int getGrade() return grade; (C) 17 17 (D) 25 25 (E) Person Constructor Student Constructor What are the last 2 lines of program output?    (A) 25 17 (B) 17 25 

22 Static Arrays

23 09. Consider the following code segment.
int[ ] list = {11,22,33,44,55,66,77,88,99}; for (int k = 0; k < list.length; k++) list[k] = list[k]/list[0]; System.out.print(list[k] + " "); What is printed as a result of executing the code segment? (A) (B) (C) (D) (E)

24 09. Consider the following code segment.
int[ ] list = {11,22,33,44,55,66,77,88,99}; for (int k = 0; k < list.length; k++) list[k] = list[k]/list[0]; System.out.print(list[k] + " "); What is printed as a result of executing the code segment? (A) (B) (C) (D) (E)

25 10. Consider the following code segment.
int[ ] list1 = {10,20,30,40,50,60,70,80,90}; int[ ] list2 = list1; for (int k = 0; k < list2.length; k++) list2[k] = list1[0]; for (int k = 0; k < list1.length; k++) list1[k] *= list2[k]; System.out.print(list1[k] + " "); What is printed as a result of executing the code segment? (A) (B) (C) (D) 10 (E) 100

26 10. Consider the following code segment.
int[ ] list1 = {10,20,30,40,50,60,70,80,90}; int[ ] list2 = list1; for (int k = 0; k < list2.length; k++) list2[k] = list1[0]; for (int k = 0; k < list1.length; k++) list1[k] *= list2[k]; System.out.print(list1[k] + " "); What is printed as a result of executing the code segment? (A) (B) (C) (D) 10 (E) 100

27 Dynamic Arrays

28 11. Consider the following code segment.
ArrayList<String> names = new ArrayList<String>(); names.add("Isolde"); names.add("John"); names.add("Greg"); names.add("Maria"); names.add("Heidi"); names.add(2,"Diana"); names.add(5,"David"); System.out.println(names); What is printed as a result of executing the code segment? (A) [Isolde, John, Diana, Maria, Heidi, David] (B) [Isolde, Diana, Greg, Maria, David] (C) [Isolde, John, Diana, Greg, Maria, David, Heidi] (D) [Isolde, John, Diana, Greg, Maria, Heidi, David] (E) [Isolde, Diana, John, Greg, Maria, David, Heidi]

29 11. Consider the following code segment.
ArrayList<String> names = new ArrayList<String>(); names.add("Isolde"); names.add("John"); names.add("Greg"); names.add("Maria"); names.add("Heidi"); names.add(2,"Diana"); names.add(5,"David"); System.out.println(names); What is printed as a result of executing the code segment? (A) [Isolde, John, Diana, Maria, Heidi, David] (B) [Isolde, Diana, Greg, Maria, David] (C) [Isolde, John, Diana, Greg, Maria, David, Heidi] (D) [Isolde, John, Diana, Greg, Maria, Heidi, David] (E) [Isolde, Diana, John, Greg, Maria, David, Heidi]

30 12. Consider the following method.
/** Precondition: list contains [13, 64, 42, 27, 77, 38, 11] */ public static void mystery(ArrayList<Integer> list) { for (int k = 0; k < list.size(); k++) if (list.get(k) % 2 == 0) list.remove(k); } Which of the following describes the values stored in list after mystery executes? (A) [13, 64, 42, 27, 77, 38, 11] (B) [13, 27, 77, 11] (C) [13, 42, 27, 77, 11] (D) [64, 42, 38] An IndexOutOfBoundsException error message

31 12. Consider the following method.
/** Precondition: list contains [13, 64, 42, 27, 77, 38, 11] */ public static void mystery(ArrayList<Integer> list) { for (int k = 0; k < list.size(); k++) if (list.get(k) % 2 == 0) list.remove(k); } Which of the following describes the values stored in list after mystery executes? (A) [13, 64, 42, 27, 77, 38, 11] (B) [13, 27, 77, 11] (C) [13, 42, 27, 77, 11] (D) [64, 42, 38] An IndexOutOfBoundsException error message

32 String Methods

33 13. Consider the following method.
// Precondition: str is a nonempty string of upper-case letters public static String mystery(String str) { String temp = ""; for (int k = 0; k < str.length(); k++) String t = str.substring(k,k+1); if (t != "A" || t != "E" || t != "I" || t != "O" || t != "U") temp += t; } return temp; Which of the following is a correct Postcondition, based on the return of method mystery? (A) Postcondition: mystery returns str (B) Postcondition: mystery returns str with all vowels removed (C) Postcondition: mystery returns only the vowels in str (D) Postcondition: mystery returns null (E) It will generate a StringOutOfBoundsException error message

34 13. Consider the following method.
// Precondition: str is a nonempty string of upper-case letters public static String mystery(String str) { String temp = ""; for (int k = 0; k < str.length(); k++) String t = str.substring(k,k+1); if (t != "A" || t != "E" || t != "I" || t != "O" || t != "U") temp += t; } return temp; Which of the following is a correct Postcondition, based on the return of method mystery? (A) Postcondition: mystery returns str (B) Postcondition: mystery returns str with all vowels removed (C) Postcondition: mystery returns only the vowels in str (D) Postcondition: mystery returns null (E) It will generate a StringOutOfBoundsException error message

35 14. What is the output of the following program segment?
String s = “Mississippi”; System.out.println(s.indexOf(s.substring(5,7)); 1 2 (C) 4 5 7

36 14. What is the output of the following program segment?
String s = “Mississippi”; System.out.println(s.indexOf(s.substring(5,7)); 1 2 (C) 4 5 7

37 Program Algorithms

38 15. Consider the following code segment.
String[ ] stID = {"ABC", "DEF", "GHI", "JKL", "MNO"}; String str1 = "GHI"; boolean found = false; int loc = -1, sub = 0; while (!found && sub < stID.length) { if (stID[sub].equals(str1)) found = true; loc = sub; } sub++; The code segment is an example of (A) a sort algorithm. (B) an algorithm to locate the smallest element. (C) an algorithm to locate the largest element. (D) a sequential search algorithm. (E) an algorithm to sum the values of an array.

39 15. Consider the following code segment.
String[ ] stID = {"ABC", "DEF", "GHI", "JKL", "MNO"}; String str1 = "GHI"; boolean found = false; int loc = -1, sub = 0; while (!found && sub < stID.length) { if (stID[sub].equals(str1)) found = true; loc = sub; } sub++; The code segment is an example of (A) a sort algorithm. (B) an algorithm to locate the smallest element. (C) an algorithm to locate the largest element. (D) a sequential search algorithm. (E) an algorithm to sum the values of an array.

40 16. When using a binary search, what is the MAXIMUM number of comparisons necessary to locate a specific item in a list of 1025 elements? (A) 1 (B) 9 (C) 10 (D) 11 (E) 1024

41 16. When using a binary search, what is the MAXIMUM number of comparisons necessary to locate a specific item in a list of 1025 elements? (A) 1 (B) 9 (C) 10 (D) 11 (E) 1024

42 Recursive Methods

43 17. Consider the following code segment and method.
int[ ] list = {1,2,3,4}; mystery1(list,0); public static void mystery1(int[ ] x, int n) { if (n < x.length) System.out.print(x[n] + " "); mystery1(x,n+1); } What is output by executing the code segment?  (A) (B) 1 2 3 (C) (D) (E) 3 2 1

44 17. Consider the following code segment and method.
int[ ] list = {1,2,3,4}; mystery1(list,0); public static void mystery1(int[ ] x, int n) { if (n < x.length) System.out.print(x[n] + " "); mystery1(x,n+1); } What is output by executing the code segment?  (A) (B) 1 2 3 (C) (D) (E) 3 2 1

45 18. Consider the following code segment and method.
int[ ] list = {1,2,3,4}; mystery2(list,0); public static void mystery2(int[ ] x, int n) { if (n < x.length) mystery2(x,n+1); System.out.print(x[n] + " "); } What is output by executing the code segment?  (A) (B) 1 2 3 (C) (D) (E) 3 2 1

46 18. Consider the following code segment and method.
int[ ] list = {1,2,3,4}; mystery2(list,0); public static void mystery2(int[ ] x, int n) { if (n < x.length) mystery2(x,n+1); System.out.print(x[n] + " "); } What is output by executing the code segment?  (A) (B) 1 2 3 (C) (D) (E) 3 2 1

47 19. Consider the following code segment and method.
System.out.println(mystery3(5)); public static int mystery3(int n) { if (n == 0) return n; else return n + mystery3(n-1); } What value is returned by the a call to mystery3(5)?    (A) 4 (B) 8 (C) 12 (D) 15 (E) 16

48 19. Consider the following code segment and method.
System.out.println(mystery3(5)); public static int mystery3(int n) { if (n == 0) return n; else return n + mystery3(n-1); } What value is returned by the a call to mystery9(5)?    (A) 4 (B) 8 (C) 12 (D) 15 (E) 16

49 20. Consider the following code segment and method.
System.out.println(mystery4(5)); public static int mystery4(int n) { if (n == 1) return 1; else return mystery4(n-1) + mystery4(n-1); } What value is returned by the a call to mystery4(5)?    (A) 16 (B) 15 (C) 8 (D) 7 (E) 4

50 20. Consider the following code segment and method.
System.out.println(mystery4(5)); public static int mystery4(int n) { if (n == 1) return 1; else return mystery4(n-1) + mystery4(n-1); } What value is returned by the a call to mystery4(5)?    (A) 16 (B) 15 (C) 8 (D) 7 (E) 4

51 21. Consider the following code segment and method.
System.out.println(mystery5(4)); public static int mystery5(int n) { if (n == 1) return 1; else return n + mystery5(n-1) + mystery5(n-1); } What value is returned by the a call to mystery5(5)?    (A) 13 (B) 25 (C) 26 (D) 32 (E) 34

52 21. Consider the following code segment and method.
System.out.println(mystery5(4)); public static int mystery5(int n) { if (n == 1) return 1; else return n + mystery5(n-1) + mystery5(n-1); } What value is returned by the a call to mystery5(5)?    (A) 13 (B) 25 (C) 26 (D) 32 (E) 34

53 OOP Polymorphism

54 What is printed as a result of executing the code segment?
22. Consider the following class definitions and code segment. ClassA item1 = new ClassA(); ClassA item2 = new ClassB(); ClassA item3 = new ClassC(); item1.method(10); item2.method(20); item3.method(30); class ClassA { public ClassA() { } public void method(int a) {System.out.println("Class A " + a);} } class ClassB extends ClassA public ClassB(){ } public void method(int b) {System.out.println("Class B " + b);} class ClassC extends ClassB public ClassC(){ } What is printed as a result of executing the code segment? (A) Class A 10 Class A 20 Class A 30 (B) Class A 10 Class B 20 Class B 30 (C) Class A 10 (D) Class A 10 (E) Exception error message

55 What is printed as a result of executing the code segment?
22. Consider the following class definitions and code segment. ClassA item1 = new ClassA(); ClassA item2 = new ClassB(); ClassA item3 = new ClassC(); item1.method(10); item2.method(20); item3.method(30); class ClassA { public ClassA() { } public void method(int a) {System.out.println("Class A " + a);} } class ClassB extends ClassA public ClassB(){ } public void method(int b) {System.out.println("Class B " + b);} class ClassC extends ClassB public ClassC(){ } What is printed as a result of executing the code segment? (A) Class A 10 Class A 20 Class A 30 (B) Class A 10 Class B 20 Class B 30 (C) Class A 10 (D) Class A 10 (E) Exception error message

56 Redefining Methods

57 23. Consider the following code segment.
String[] list1 = {"Tom","Sue","Joe"}; ArrayList<String> list2 = new ArrayList<String>(); list2.add("Meg"); list2.add("Bob"); list2.add("Ann"); System.out.println(list1); System.out.println(list2); What is printed as a result of executing the code segment? (A) [Tom, Sue, Joe] [Meg, Bob, Ann] (B) [Tom, Sue, Joe] [Ljava.util.ArrayList:memory reference (C) [Ljava.lang.String:memory reference [Meg, Bob, Ann]  (D) [Ljava.lang.String:memory reference (E) None of the above, because array objects can only be displayed with a loop structure, which accesses each array element.

58 23. Consider the following code segment.
String[] list1 = {"Tom","Sue","Joe"}; ArrayList<String> list2 = new ArrayList<String>(); list2.add("Meg"); list2.add("Bob"); list2.add("Ann"); System.out.println(list1); System.out.println(list2); What is printed as a result of executing the code segment? (A) [Tom, Sue, Joe] [Meg, Bob, Ann] (B) [Tom, Sue, Joe] [Ljava.util.ArrayList:memory reference (C) [Ljava.lang.String:memory reference [Meg, Bob, Ann]  (D) [Ljava.lang.String:memory reference (E) None of the above, because array objects can only be displayed with a loop structure, which accesses each array element.

59 24. Consider the following code segment and Car class.
Car car = new Car("Ford",2010); System.out.println(car); class Car { private String make; private int year; public Car (String m, int y) make = m; year = y; } public String toString () return "[" + make + ", " + year + "]"; What is printed as a result of executing the code segment? (A) [Ford, 2010] (B) [make, year] (C) Ford, 2010 (D) memory reference> (E) None of the above

60 24. Consider the following code segment and Car class.
Car car = new Car("Ford",2010); System.out.println(car); class Car { private String make; private int year; public Car (String m, int y) make = m; year = y; } public String toString () return "[" + make + ", " + year + "]"; What is printed as a result of executing the code segment? (A) [Ford, 2010] (B) [make, year] (C) Ford, 2010 (D) memory reference> (E) None of the above

61 25. Consider the following code segment and Car class.
Car car1 = <some Car object> Car car2 = <some Car object> System.out.println (car1.equals(car2)); class Car { private String make; private int year; public Car (String m, int y) make = m; year = y; } public boolean equals (Object other) return true; What is printed as a result of executing the code segment? (A) False, since non-standard classes cannot be compared for equality. (B ) Neither, since output cannot be determined without specific Car object information (C) True, if both objects are the same year (D) True, if both objects are both the same make and the same year (E) True, for all Car objects

62 25. Consider the following code segment and Car class.
Car car1 = <some Car object> Car car2 = <some Car object> System.out.println (car1.equals(car2)); class Car { private String make; private int year; public Car (String m, int y) make = m; year = y; } public boolean equals (Object other) return true; What is printed as a result of executing the code segment? (A) False, since non-standard classes cannot be compared for equality. (B ) Neither, since output cannot be determined without specific Car object information (C) True, if both objects are the same year (D) True, if both objects are both the same make and the same year (E) True, for all Car objects


Download ppt "MC Question Strategies"

Similar presentations


Ads by Google