Students who are interested in potentially pursuing a computer science degree typically start by taking our introductory course, CSCI 134: Introduction to Computer Science. However, there are some circumstances whereby students are permitted to enroll directly into the second course in the introductory course sequence, CSCI 136: Data Structures and Advanced Programming, without having taken CSCI 134.
Students are ordinarily permitted to enroll in CSCI 136 if they earn a passing grade in CSCI 134 or if they earn a 4 or higher on the AP Computer Science A Exam. Because a student may have a sufficient knowledge of introductory CS without having attained either of these prerequisites, the CS placement exam provides another opportunity to enroll directly in CSCI 136 without taking CSCI 134 beforehand.
What Material is Covered on the Exam
The placement exam tests a student’s mastery of the following programming concepts and techniques:
- literal values
- essential data types (booleans, integers, floating point values, and strings)
- arithmetic and logical operations
- control flow to allow decisions (conditionals) or repetition (loops)
- reading input and printing output
- function definitions and function calls
- problem decomposition
When to Take the Exam
If you wish to take the exam in order to sign up for CSCI 136 in the Fall, the exam should be completed no later than 5pm on August 1. Students will not be permitted to sign up for CSCI 136 without having either completed the prerequisites or having passed the exam at the level of CSCI 136. If you wish to take the exam in order to sign up for CSCI 136 in the Spring, the exam should be completed no later than 5pm on the Wednesday of the Spring preregistration period.
After taking the exam, student work will be examined by members of the CS faculty. Depending on that examination, a student will receive an email that recommends enrollment in either CSCI 134 or CSCI 136. Students who are recommended to enroll in CSCI 136 will be given a waiver that enables them to preregister for CSCI 136 without the CSCI 134 prerequisite.
The exam is administered online with Gradescope. If you choose to take the exam, we will send you an email to your @williams.edu email address indicating how to log in to Gradescope. Once you log in, you will see a link to placement exam.
The Placement Survey consists of three parts: an Honor Code statement, a quick survey of prior Computer Science experience, and a programming exercise to be completed without any outside references or programming tools. You will have 90 minutes to complete these three parts.
- The exam is closed book.
- You may not use your computer for anything other than answering questions within Gradescope until you submit your work.
- You may not consult any reference materials or use any programming tools during this exam (including, but not limited to, the Python interpreter, the Java runtime, or any other programming language).
- You may not discuss any aspect of this exam with other students during or after the exam. If asked about the exam, the only acceptable response is “I am not allowed to discuss it.”
How to Register to Take the Exam
Register by filling out the following Google Form. You will need a @williams.edu email address in order to register. We recommend registering for the exam well in advance of the due date (see above), otherwise, we may not be able to process your request before the deadline. Be sure to plan ahead!