1
FINAL EXAM AND COURSE OUTCOMES MATCHING
COURSE OUTCOMES
Upon successful completion of this course, students should be able to
Here is a mapping of the final comprehensive exam against the course outcomes:
Question
Matches outcomes
Part I(a)
3
Part I(b)
3
Part I(c)
2
Part II(a)
3
Part II(b)
3
Part VI
1, 2, 3, 4, 5, 6, 7
2
Name:__________________
Covers chs 1-8
CSCI 1301 Final
Armstrong Atlantic State University
Part I:
a:
The loop body is executed 10 times.
The printout of the code is
b.
int sum = 0;
int i = 0;
do {
sum += i;
i++;
} while (i < 100);
c. Convert the following if statement using a switch
statement
Part II:
a:
1 4 7
b:
max is 5
number 0
c:
2765
d:
3
numbers is 0 and numbers[0] is 3
e: 10
Part III: (Write programs)
a.
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
}
}
b.
public class Test {
/** Print Pattern III */
public static void main(String[] args) {
for (int i = 1; i <= 6; i++) {
// Print leading space
for (int j = 6 – i; j >= 1; j)
System.out.printf(“%4s”, ” “);
4
System.out.print(“Enter a list: “);
int size = input.nextInt();
int[] list = new int[size];
for (int i = 0; i < list.length; i++)
list[i] = input.nextInt();
if (isSorted(list))
System.out.println(“The list is already sorted”);
else
System.out.println(“The list is not sorted”);
}
}
}
d.
public class Test {
public static int count(String str, char a) {
int count = 0;
for (int i = 0; i < str.length(); i++)
if (str.charAt(i) == a)
count++;
return count;
}
5
Part IV: Multiple Choice Questions: (1 pts each)
(1. Mark your answers on the sheet. 2. Login and click Take
Instructor Assigned Quiz for QFinal. 3. Submit it online
within 5 mins. 4. Close the Internet browser.)
1. 24 % 5 is _____
A. 2
B. 0
C. 4
D. 1
E. 3
#
2. If you attempt to add an int, a byte, a long, and a double, the result will be a
__________ value.
A. int
B. long
C. byte
D. double
#
3. What is the result of 45 / 4?
A. 11
B. 12
C. 10
D. 11.25
#
4. In Java, the word true is ________.
A. a Boolean literal
B. a Java keyword
C. same as value 0
D. same as value 1
#
5. The following code displays ___________.
6
double temperature = 50;
if (temperature >= 100)
System.out.println(“too hot”);
else if (temperature <= 40)
System.out.println(“too cold”);
else
System.out.println(“just right”);
A. too hot
B. too cold
C. too hot too cold just right
D. just right
#
6. The “less than or equal to” comparison operator in Java is __________.
A. <<
B. =<
C. !=
D. <=
E. <
#
7. Analyze the following code fragments that assign a boolean value to the variable even.
Code 1:
if (number % 2 == 0)
even = true;
else
even = false;
Code 2:
even = (number % 2 == 0) ? true: false;
Code 3:
even = number % 2 == 0;
A. Code 3 has a syntax error, because you attempt to assign number to even.
B. Code 2 has a syntax error, because you cannot have true and false literals in the
conditional expression.
C. All three are correct, but Code 1 is preferred.
D. All three are correct, but Code 2 is preferred.
E. All three are correct, but Code 3 is preferred.
7
#
8. How many times will the following code print “Welcome to Java”?
int count = 0;
do {
System.out.println(“Welcome to Java”);
} while (count++ < 10);
A. 10
B. 8
C. 0
D. 9
E. 11
#
9. What is the value in count after the following loop is executed?
int count = 0;
do {
System.out.println(“Welcome to Java”);
} while (count++ < 9);
System.out.println(count);
A. 11
B. 0
C. 9
D. 8
E. 10
#
10. What is the number of iterations in the following loop:
for (int i = 1; i <= n; i++) {
// iteration
}
A. 2*n
B. n
C. n – 1
D. n + 1
#
8
11. What is the output for y?
int y = 0;
for (int i = 0; i<10; ++i) {
y += i;
}
System.out.println(y);
A. 45
B. 12
C. 13
D. 10
E. 11
#
12. What is i after the following for loop?
int y = 0;
for (int i = 0; i<10; ++i) {
y += i;
}
A. 9
B. 10
C. undefined
D. 11
#
13. __________ is to implement one method in the structure chart at a time from the top
to the bottom.
A. Stepwise refinement
B. Top-down approach
C. Bottom-up and top-down approach
D. Bottom-up approach
#
14. Analyze the following code.
public class Test {
public static void main(String[] args) {
System.out.println(max(1, 2));
}
9
public static double max(int num1, double num2) {
System.out.println(“max(int, double) is invoked”);
if (num1 > num2)
return num1;
else
return num2;
}
public static double max(double num1, int num2) {
System.out.println(“max(double, int) is invoked”);
if (num1 > num2)
return num1;
else
return num2;
}
}
A. The program runs and prints 2 followed by “max(double, int)” is invoked.
B. The program cannot compile because the compiler cannot determine which max
method should be invoked.
C. The program runs and prints “max(int, double) is invoked” followed by 2.
D. The program runs and prints 2 followed by “max(int, double)” is invoked.
E. The program cannot compile because you cannot have the print statement in a non-
void method.
#
15. Analyze the following code:
public class Test {
public static void main(String[] args) {
System.out.println(xMethod(5, 500L));
}
public static int xMethod(int n, long l) {
System.out.println(“int, long”);
return n;
}
public static long xMethod(long n, long l) {
System.out.println(“long, long”);
return n;
}
}
10
A. The program does not compile because the compiler cannot distinguish which
xmethod to invoke.
B. The program runs fine but displays things other than 5.
C. The program displays long, long followed by 5.
D. The program displays int, long followed by 5.
#
16. What is Math.floor(3.6)?
A. 5.0
B. 3
C. 3.0
D. 4
#
17. How many elements are in array double[] list = new double[5]?
A. 5
B. 4
C. 6
D. 0
#
18. The reverse method is defined in the textbook. What is list1 after executing the
following statements?
int[] list1 = {1, 2, 3, 4, 5, 6};
list1 = reverse(list1);
A. list1 is 6 5 4 3 2 1
B. list1 is 1 2 3 4 5 6
C. list1 is 0 0 0 0 0 0
D. list1 is 6 6 6 6 6 6
#
19. If you declare an array double[] list = {3.4, 2.0, 3.5, 5.5}, list[1] is ________.
a. 3.4
b. 2.0
c. 3.5
d. 5.5
e. undefined
11
#
20. In the following code, what is the printout for list2?
class Test {
public static void main(String[] args) {
int[] list1 = {1, 2, 3};
int[] list2 = {1, 2, 3};
list2 = list1;
list1[0] = 0; list1[1] = 1; list2[2] = 2;
for (int i = 0; i < list2.length; i++)
System.out.print(list2[i] + ” “);
}
}
a. 1 2 3
b. 1 1 1
c. 0 1 2
d. 0 1 3
#
21. What is the output of the following code?
double[] myList = {1, 5, 5, 5, 5, 1};
double max = myList[0];
int indexOfMax = 0;
for (int i = 1; i < myList.length; i++) {
if (myList[i] >= max) {
max = myList[i];
indexOfMax = i;
}
}
System.out.println(indexOfMax);
a. 0
b. 1
c. 2
d. 3
e. 4
#
22. Suppose a method p has the following heading:
public static int[][] p()
What return statement may be used in p()?
12
a. return 1;
b. return {1, 2, 3};
c. return int[]{1, 2, 3};
d. return new int[]{1, 2, 3};
e. return new int[][]{{1, 2, 3}, {2, 4, 5}};