Place: TBA
Time: TBA
Date: TBA


The Computer Science Advanced Standing Exam (CASE) is used to determine whether a student should receive credit for CS 1110. While that course is currently offered in Python, the computer science department is willing to extend credit to any student that exhibits mastery of procedural programming (e.g. functions and procedures), and exhibits familiarity with object-oriented programming. The placement exam is designed so that students may answer each question in any object oriented language of their choice, including Java, Python, C#, and C++.

Students taking the placement exam will be expected to demonstrate mastery of the following concepts:

  • Evaluating basic expressions
  • Writing algorithms on string input
  • Writing algorithms on multi-dimensional lists or arrays
  • Writing recursive functions
  • Writing simple classes
  • Devising testing plans

All of these topics are covered in CS 1110, so you would benefit from this course if any of these terms are unfamiliar to you.

The test does not include subclassing, inheritance, or overriding. While this material is covered in CS 1110, we do not expect mastery in these topics to receive credit.


Grading is pass/fail. Students taking the exam will either receive credit for CS1110 or no credit at all.

Grading will be complete by TBD, in time for your first meeting with your advisor. Your grade will be posted online in the Cornell course management system (CMS). Log in to this site with your netid and password; the Advanced Standing Exam is listed as a Fall 20120 course named "CS ASE".

If you pass, the grade in CMS will be a 1; there will be no further comments. If you do not pass, then it will be a 0 and, if we deem it necessary, we will add comments to explain the grade. If you have further questions about your score, e-mail Walker White for an appointment to discuss your exam.

Advising Recommendations

You should use the recommendation of the Advanced Standing Exam to determine your fall courses with your advisor.

If you are awarded credit for CS 1110

In this case we advise you to take CS 2110 as your first programming course. If you do take CS 2110, and you discover during the ADD period that it seems too difficult, consult with your advisor about how to proceed. Be aware that if you ever choose to take CS 1110, the grade that you receive in CS 1110 will replace your credit for the Advanced Standing Exam.

If you are not awarded credit for CS 1110

In this case we advise you to take CS 1110 as your first programming course. In addition, there is a MatLab course — CS 1112 — which covers material similar to CS 1110, but in a different programming language. Discuss these options with your advisor and carefully monitor your progress during the ADD period in case you need to revise your choice.

It is possible, though not recommended, to take CS 2110 without having received credit for CS 1110. You should only do this if you have significant programming experience and have discussed the issue thoroughly with your advisor.

If you take CS 2110 without having received credit for CS 1110, and if you are a student in the College of Engineering, CS 2110 cannot fulfill both the CS 1110 requirement and the College of Engineering distribution requirement. CS 2110 is a three-credit course, whereas CS 1110 is a four-credit course. In that case you will need to take both of the following types of courses:

  • another distribution course to replace CS1110, and
  • any technical course in engineering to replace the missing one credit.

Please consider this option carefully.