Test Structure

Get details about different sections of the AP CS A exam.

The following five AP Computer Science A computational thinking practices are assessed on the AP Exam:

  • Practice 1: Program design and algorithm development
  • Practice 2: Code logic
  • Practice 3: Code implementation
  • Practice 4: Code testing
  • Practice 5: Documentation

Section I: multiple choice

The AP Computer Science A Exam multiple choice section includes mostly individual questions, with one or two sets of multiple questions (typically two to three questions per set).

Computational thinking practices 1, 2, 4, and 5 are all assessed in the multiple choice section with the following exam weighting (computational thinking practice 3 is not assessed in the multiple choice section):

Computational Thinking Practice

Exam Weighting

Practice 1: Program Design and Algorithm Development

30 - 35%

Practice 2: Code Logic

40 - 45%

Practice 3: Code Testing

12 - 18%

Practice 5: Documentation

12 - 18%

Section II: free response

This section includes four free-response questions, all of which assess computational thinking practice 3: code implementation.

All five skills within this practice are assessed across the four free response questions, with the following skill focus for each question:

  • Free response question 1: Methods and control structures focus on assessing students’ ability to:

    • Skill 3.A: Write program code to create objects of a class and call methods.
    • Skill 3.C: Write program code to satisfy method specifications using expressions, conditional statements, and iterative statements.
  • Free response question 2: Class focuses on assessing students’ ability to:

    • Skill 3.B: Write a program code to define a new type by creating a class.
    • Skill 3.C: Write program code to satisfy method specifications using expressions, conditional statements, and iterative statements.
  • Free response question 3: Array/ArrayList focuses on assessing students’ ability to:

    • Skill 3.C: Write program code to satisfy method specifications using expressions, conditional statements, and iterative statements.
    • Skill 3.D: Write program code to create, traverse, and manipulate elements in 1D arrays or ArrayList objects.
  • Free response question 4: 2D Array focuses on assessing students’ ability to:

    • Skill 3.C: Write program code to satisfy method specifications using expressions, conditional statements, and iterative statements.
    • Skill 3.E: Write program code to create, traverse, and manipulate elements in 2D array objects.

Task verbs used in the free response questions

The following task verbs are commonly used in the free response questions:

  • Assume: Suppose to be the case without any proof or need to further address the condition.

  • Complete (program code): Express, in print form, the proper syntax to represent a described algorithm or program when given part of the code.

  • Implement/Write: Express, in print form, the proper syntax to represent a described algorithm or program.