Self-Testing

Object-Oriented Programming Using C++.

Self-testing is one way for you to monitor your learning and understanding. It provides a safe environment for you to assess your preparation for an exam - safe because there are no penalties for missing questions here. Furthermore, many of the questions presented here are similar to those an interviewer might ask you during a job interview. As you study the questions and their solutions, it's far more important to understand why a response is correct or incorrect than just knowing the answer. If your instructor adapts one of the questions, a small modification can easily change the correct answer, making understanding the problem and its solution more important than memorizing the answer.

John Dunlosky, Katherine A. Rawson, Elizabeth J. Marsh, Mitchell J. Nathan, and Daniel T. Willingham (What Works, What Doesn't. Scientific American Mind, Sept./Oct., 2013, pp. 46-53.) present "some study techniques [that] accelerate learning." Self-testing is first on their list:

HOW IT WORKS
"Unlike a test that evaluates knowledge, practice tests are done by students on their own, outside of class. Methods might include using flash cards (physical or digital) to test recall or answering the sample questions at the end of a textbook chapter. Although most students prefer to take as few tests as possible, hundreds of experiments show that self-testing improves learning and retention. ... Recall for items they had been repeatedly tested on was 80 percent, compared with only 36 percent for items they had restudied" (p. 49).
WHEN DOES IT WORK?
"Anyone from preschoolers to fourth-year medical students to middle-age adults can benefit from practice testing. ... Short, frequent exams are most effective, especially when test takers receive feedback on the correct answers" (p. 49).
RATING
"High utility. Practice testing works across an impressive range of formats, content, learner ages and retention intervals" (p. 49).

Study Guides And Answers

The self-tests are named Study Guides to emphasize their primary purpose: to help students study. The guides focus your attention on the essential concepts and allow you to gauge the effectiveness of your study. Concentrating on the new terminology introduced in each chapter will help you understand the questions. Always, as you study, study so that you can use what you are learning to solve new problems.

The guides test some concepts repeatedly. First, with multiple choice questions that queue your response. Next as fill-in-the-blank questions that are unqueued. And finally, by asking you to use the concept to solve a problem, often by writing C++ code. Solving a problem usually involves integrating previously learned concepts with new ones, which may require you to review previous chapters. Solving new problems, reviewing previously learned concepts, and learning new concepts are all part of being a computing professional.

Study Guides

  1. For Students
  2. Basics
  3. Core Operations
  4. Control Statements
  5. Pointers
  6. Structures
  7. Functions
  8. Arrays
  9. Strings and C-Strings
  10. Classes and Objects
  11. Multi-Class Programs
  12. Overloaded Operators
  13. Polymorphism

Answers

  1. For Students
  2. Basics
  3. Core Operations
  4. Control Statements
  5. Pointers
  6. Structures
  7. Functions
  8. Arrays
  9. Strings and C-Strings
  10. Classes and Objects
  11. Multi-Class Programs
  12. Overloaded Operators
  13. Polymorphism