External New Student Exemption Exams

Exemption Exam Information

Exemption exams help determine the proper placement of undergraduate students into Computer Science courses before their first semester at the University of Maryland. Academic credit is not awarded for exemption exams. Permission to register for subsequent courses will only be given once an exam is taken and passed with a satisfactory score. There is no cost associated with taking a Computer Science exemption exam. Exemption exams are intended to test knowledge acquired from coursework, and we recommend against attempting them based on self study.

We offer exemption exams for the following CMSC courses (see the Undergraduate Catalog for course descriptions):

  • CMSC131/132: Object Oriented Programming I and II
    These two intro classes are combined into one exam. You should take this exam if you wish to place out of CMSC131 or CMSC131 & CMSC132. If you scored a 5 on the AP Computer Science A exam, you will earn academic credit for CMSC131, so you should only take this exam if you wish to place out of CMSC132.
  • CMSC216: Introduction to Computer Systems
    In order to take the CMSC216 exemption exam, you must either have transfer credit for CMSC132 OR you must first take the CMSC131/132 exam. If you take the CMSC131/132 exam but do not score high enough to place out of CMSC132, then your CMSC216 exam will not be graded.
  • CMSC250: Discrete Structures
    Any qualifying student may take the CMSC250 exemption exam. You do not need to take the CMSC131/132 or CMSC216 exam first.

If you have any questions regarding exemption exams, email scheduling [at] cs [dot] umd [dot] edu. Please provide at least 48 hours for a response.


Computer Science exemption exams are open to all new incoming UMD undergraduate students, in all colleges and majors. This includes all new freshmen, external transfer students, and post-baccalaureate students who earned their first Bachelor’s degree at another institution. Post-baccalaureate students who earned their first Bachelor’s degree at UMD are welcome to take exemption exams unless they have already attempted CMSC 131, 132, 216, and/or 250 at UMD.

Current University of Maryland students, including internal transfers to the Computer Science major, are not eligible for exemption exams.

Please contact scheduling [at] cs [dot] umd [dot] edu if you have any questions about your eligibility.


If you have accommodations for a learning disability, you will need to submit an official Accommodation Letter from the UMD Accessibility and Disability (ADS) Office. You must register with ADS at https://counseling.umd.edu/ads/prospective. It may take some time for this to be processed, so please do this as soon as possible. You will be required to upload your provide your official Academic Accommodations letter when completing your registration. We will work with our proctors to accommodate your needs. In some cases, this may mean rescheduling your exam.

Summer 2023 Exemption Exam Dates & Registration

Exam Dates

Exemption exams will be offered in-person in either the Brendan Iribe Center (IRB) or the Computer Science Instructional Center (CSI). You must arrive at least ten minutes early and must bring a valid photo ID (e.g. UMD Student ID, Driver's License, Military ID, Passport) and a pencil with you. If you are taking the CMSC131/132 exam, you will be given 2.5 hours. If you are taking the CMSC216 or CMSC250 exam, you will be given 2 hours.

Exams will be offered on the following dates. Additional dates during the last week of August will be added later this summer.

  • Friday, May 5 at 2:00 pm in IRB 1116
  • Friday, May 26 at 12:00 pm in IRB 0318
  • Thursday, June 1 at 3:00 pm in CSI 1115
  • Tuesday, June 6 at 3:00 pm in IRB 0318
  • Thursday, June 8 at 3:00 pm in IRB 0318
  • Friday, June 9 at 3:00 pm in IRB 0318
  • Tuesday, June 13 at 3:00 pm in IRB 0318
  • Thursday, June 15 at 3:00 pm in IRB 0318
  • Wednesday, June 21 at 3:00 pm in CSI 1115
  • Friday, June 23 at 3:00 pm in CSI 1115
  • Tuesday, June 27 at 3:00 pm in IRB 0318
  • Friday, June 30 at 3:00 pm in IRB 0318
  • Tuesday, July 11 at 3:00 pm in IRB 0318
  • Thursday, July 13 at 3:00 pm in IRB 0318
  • Tuesday, July 18 at 3:00 pm in IRB 0318
  • Thursday, July 20 at 3:00 pm in IRB 0318
  • Tuesday, July 25 at 3:00 pm in IRB 0318
  • Thursday, July 27 at 3:00 pm in CSI 1115
  • Tuesday, August 1 at 3:00 pm in IRB 0318
  • Wednesday, August 2 at 3:00 pm in IRB 0318
  • Friday, August 18 at 3:00 pm in CSI 1115
  • Tuesday, August 22 at 3:00 pm in IRB 0318
  • Wednesday, August 23 at 3:00 pm in CSI 1115

      Terms of Agreement and Honors Pledge

      1. Students will have two and a half hours for the CMSC131/132 exam and two hours for the CMSC216 and CMSC250 exams. If you are not able to complete the exam in the allotted time, you must turn in the exam as-is.
      2. Students may only attempt each exemption exam one time, and may only take one exam per time slot. All exams must be taken prior to the start of the student's first semester here at UMD.
      3. Exams taken between May and early August will be graded within two weeks. Exams taken in late August will be graded within 3-4 business days.
      4. Students will be notified of their results via their registered UMD email (TERPmail).
      5. Students may not review their exam once it has been submitted for grading.
      6. Regarding Academic Integrity:
        • The University of Maryland takes academic integrity matters seriously. Students completing an exemption exam are expected to complete the exam without using any additional resources (e.g., code from the web, notes, etc.) Remember that it is in your best interest to complete exams following the above guidelines, otherwise you might be placed in a course where you might not be successful. 
        • After taking an exam, you may not disclose, post nor distribute any information about the exam. Providing this information represents an academic integrity violation and will be reported as such. We appreciate your cooperation on this matter.
        • Cases of suspected cheating or misconduct (e.g., false identification) during the exam will be reported immediately to the Honor Council within the Office of Student Conduct.

      Exam Registration

      The registration form is linked below. Please note:

      1. You must submit a form for each exam you plan to take.
      2. You must register at least one business day prior to your exam date.
      3. In order to access the form, you must first activate your UMD Directory ID by going to https://identity.umd.edu and clicking on the “Activate Account” button (if you have questions, refer to #3 on the Admitted Student Checklist), and log in to your TERPmail account. If you still have trouble accessing the form, make sure you are logged out of all other Google accounts or try opening the form in a private/incognito window.

      Register for a CS Exemption Exam Here

        How to prepare:

        Please review the course descriptions below to help you review the topics covered in each exam.

        CMSC131: Object Oriented Programming I

        Format: Handwrite code, define terms
        Summer 2023 Passing score:

        • Students will need to receive 70%+ on Part I and Part II of the CMSC131/132 Exam in order to place out of CMSC131
        • Students who only receive 70% on Part I of the CMSC131/132 Exam have the option to take CMSC133, a 2-credit accelerated version of CMSC131

        Practice Problems
        Preparation Notes
        Topics covered:

        • Hardware/Software/Java Terminology
        • Continue/break in loops
        • Recursion
        • Roundoff error
        • Primitives and Arithmetic and Logical Operators
        • Java String and StringBuffer
        • Conditional statements
        • For, while, and do-while loops
        • Arrays, Arrays as Parameters
        • Object Oriented Concepts
        • Mutable-vs-Immutable types, Reference/Shallow/Deep Copies
        • Generics, Interfaces, ArrayList
        • Objects
        • Exception Handling
        • JUnit Testing

        CMSC132: Object Oriented Programming II

        Format: Handwrite code, define terms
        Summer 2023 Passing score: 70%+ on Parts I, II, and III of the CMSC131/132 Exam
        Preparation Notes
        Topics covered

        • Topics listed under CMSC131
        • Object-oriented software development
        • Requirements & specifications
        • Designing objects & classes
        • Testing
        • Inheritance
        • Binary Search Trees
        • Algorithms & data structures
        • Asymptotic efficiency
        • Lists, stacks, queues
        • Trees, heaps
        • Sets, maps, graphs
        • Java Hash Code Contract
        • Programming skills
        • Java collection framework
        • Threads, synchronization

        CMSC216: Introduction to Computer Systems

        Note: You will need take the CMSC131/132 exam prior to taking the CMSC216 exam. If you do not place out of CMSC131 and CMSC132, you cannot place out of CMSC216.
        Format: Handwrite code, define terms
        Summer 2023 Passing score: 70% +
        Preparation Notes
        Topics covered:

        • Unix Memory Model
        • Moving from Java to C programing
        • Pointers and dynamic data structures in C
        • I/O, standard libraries
        • Testing
        • Assembly Language (Y86) and Assembly Y86 Resources 
        • Process control
        • Systems programming
        • Program measurement and optimization
        • Multithreaded programming with pthreads
        • Libraries and linking
        • Dynamic memory management

        CMSC250: Discrete Structures

        Format: Define terms, problem solve
        Summer 2023 Passing score: 80% +
        Topics covered:

        • Propositional logic, circuits, and predicate logic
        • Elementary number theory
        • Countability
        • Summations/recurrences
        • Induction (weak, strong, structural, constructive)
        • Sets, Venn diagrams, Cartesian products, powersets
        • Counting and combinations
        • Functions and the pigeonhole principle
        • Relations, reflexivity, symmetry, and transitivity
        • Graph theory
        • Boolean algebra
        • Combinatorics