Post-Test for Introduction to Computing (CS1), Fall 2000

Total Responses = 35

 

Question 1: Multiple Choice

 

C++ is:

%
Responses

An easy to understand programming language.

23%

A low-level language for machine execution.

14%

A high-level language for solving problems.

60%

I don't know.

3%

 

Question 2: Multiple Choice

 

Object-oriented software typically uses a problem-solving strategy known as:

%
Responses

Top-down decomposition or deduction.

51%

Hacking or trial and error.

6%

Analogical reasoning or generalization

34%

I don't know.

9%

 

Question 3: Multiple Choice

 

Which of the following is true in C++:

%
Responses

3 = 3.0

14%

3 == '3'

26%

3 == 3.0

57%

I don't know.

3%

 

Question 4: Multiple Choice

 

A programming language compiler is a program that:

%
Responses

Translates source code into machine code.

74%

Executes source code on a machine.

11%

Assembles source or machine code in a library.

9%

I don't know.

6%

 


 


Question 5: Multiple Choice

 

Part of the reason the Java programming language is successful is:

%
Responses

It is highly efficient, executing optimized machine code.

17%

It is portable to any platform hosting a Java virtual machine.

63%

It is simpler than object-oriented languages like C++.

14%

I don't know.

6%

 

Question 6: Multiple Choice

 

The C++ preprocessor:

%
Responses

Translates code into executable object code.

43%

Expands directives into more C++ source code.

29%

Combines code from libraries with your program's object code.

11%

I don't know.

17%

 

Question 7: Multiple Choice

 

The linker:

%
Responses

Translates code into executable object code.

6%

Expands directives into more C++ source code.

11%

Combines code from libraries with your program's object code.

69%

I don't know.

14%

 

Question 8: Multiple Choice

 

Java and Knobby's World source code both get translated:

%
Responses

into C++.

0%

into byte code for a virtual machine.

63%

into machine code for a Pentium or similar machines.

26%

I don't know.

11%

 


 

Question 9: Multiple Choice

 

Why is it a good idea to put a comment next to a variable?

%
Responses

Its meaning is more likely to remain invariant (unchanging).

66%

The compiler will prevent programmers from changing its meaning.

6%

Not necessary since the compiler ignores comments.

20%

I don't know.

9%

 

Question 10: Multiple Choice

 

In C++ a class is:

%
Responses

A set of functions that perform operations.

6%

A set of data that represent the state of an object.

3%

A set of data members and functions.

89%

I don't know.

3%

 

Question 11: Multiple Choice

 

A "waterfall" model of software development:

%
Responses

Encourages frequent re-analysis or re-design.

31%

Encourages a predictable non-cyclical order of development.

26%

Encourages rapid development of working code.

6%

I don't know.

34%

 

Question 12: Multiple Choice

 

Abstract data types are:

%
Responses

Always built into C++ and other high level languages.

20%

The same thing as classes in C++.

31%

Formal descriptions which one can implement as classes in C++.

31%

I don't know.

17%

 


 

Question 13: Multiple Choice

 

Information hiding:

%
Responses

Hides implementation details from the supplier of a class.

26%

Keeps all functions or behaviors of a class private.

3%

Separates public interface from private implementation.

69%

I don't know.

3%

 

Question 14: Multiple Choice

 

Object-orientation a natural way for people to solve problems because:

%
Responses

Even children can manipulate objects in computer programs.

3%

From childhood, people perceive the permanence of objects.

6%

From childhood, people perceive the world in terms of categories of objects.

86%

I don't know.

6%

 

Question 15: Multiple Choice

 

Inheritance or class derivation:

%
Responses

Usually models subtype relationships.

43%

Usually models whole-part relationships.

14%

Usually models client-supplier relationships.

17%

I don't know.

26%

 

Question 16: Multiple Choice

 

After creating a set of CRC cards, what is the next step?

%
Responses

You're done.

0%

Implement and test the program.

9%

Run simulations using the cards.

89%

I don't know.

3%

 


 

Question 17: Multiple Choice

 

Which of the following is not promoted by class inheritance:

%
Responses

Enforcing business contracts.

51%

Code reuse.

6%

Extending existing classes easily.

29%

Making code closed to change yet open to extensions.

14%

 

Question 18: Multiple Choice

 

Where is the boot program, which starts a PC when you turn it on, stored?

%
Responses

In RAM (Random-Access Memory).

9%

In ROM (Read-Only Memory).

74%

On a hard drive.

11%

I don't know.

6%

 

Question 19: Multiple Choice

 

Machines equipped with artificial intelligence are now:

%
Responses

Using human-like techniques to play championship chess.

43%

Better at playing chess than recognizing faces.

29%

Using information hiding to recognize faces.

6%

I don't know.

23%

 

Question 20: Multiple Choice

 

A perceptron:

%
Responses

Packs the power of a modern CPU into a single processing unit.

0%

Can learn any computational function from examples.

6%

Can learn some but not all computational functions from examples.

43%

I don't know.

49%