We encourage students in the North Carolina Community College System and elsewhere
to consider transferring into the Computer Science major at Western Carolina University.
If the answers below do not answer all of your questions, feel free to contact the
Department of Mathematics and Computer Science by phone at 828-227-7245 or by email
1. What courses from the North Carolina Community College System transfer with credit
towards the Computer Science major at WCU?
You can receive credit for CS 150 by completing one of two sequences. The first sequence
consists of the Java courses CSC 151/CSC 251 and the second sequence consists of the
Python courses CSC 121/CSC 221. Both courses for the chosen sequence must be completed
to receive credit.
2. Is transfer credit given for any other courses?
This is determined on a case-by-case basis and may require that you submit syllabi
and/or completed projects for evaluation by the department. Any additional steps that
may be allowed or required for credit is at the discretion of the department.
3. What is taught in CS 150?
CS 150 is the first programming and problem-solving course in the Computer Science
major. The course consists of lecture and hands-on application, both in Python. The
lecture covers data types, variables, decision structures (such as if-else), loops,
one-dimensional lists, two-dimensional lists, clones, and objects. The hands-on portion
takes place in a required laboratory and during the completion of substantial outside
projects (some of which may require several hundred lines of code). In the hands-on
portion of the course, students are required to utilize syntax learned in lecture
to solve non-trivial problems. The textbook currently used in CS 150 is Building Python Programs by Reges, Stepp, and Obourn. A good guide for what topics are included in CS 150
can be found in chapters 1-11, 13, 16, and 17 of How to Think Like a Computer Scientist.
4. What is taught in CS 151?
In addition to a brief introduction to how Java treats topics introduced in CS 150,
this second course is a deep exploration of inheritance, polymorphism, generics, recursion,
and sorting in Java. Students will be also be expected to develop and utilize implementations
for more advanced structures including linked lists, stacks, queues, and deques. CS
151 consists of a lecture and hand-on portions (laboratory and outside projects).
5. How quickly can the CS major be completed if I receive credit for CS 150?
If all liberal studies, Calculus I, and sciences approved for the Computer Science
major are completed before entrance, the major can be completed in five semesters.
Completion in five semesters is challenging because it requires registering for concentrated
loads of Computer Science courses. Learn more about our five-semester plan for majoring in Computer Science.
If you find that you wish to extend your plan to six semesters, that leaves room for
a lighter Computer Science load for any given semester, as well as possibilities for
completing a minor or a double major. Although not required, we encourage the completion
of a minor or a double major, especially in Mathematics. Learn more about our six-semester plan for double majoring in Computer Science and Mathematics.
6. How often are your courses taught?
CS 150, CS 151, and CS 253 are offered every Fall and Spring semester because they
are either prerequisites or corequisites for all upper-level courses. The remainder
of the required Computer Science courses are offered yearly. Typically, one elective
is offered each Fall and Spring on a rotating basis. Computer Science courses are
not usually offered in the summer. Learn more about when specific courses are scheduled to be offered.