B.S. in Computer Science
Our bachelor's degree in Computer Science is offered from The Grainger College of Engineering. See the Degree and Programs Options page for a listing of the other degrees that we offer.
The information on this page is for students entering in Fall 2021 and beyond. Students who entered prior to Fall 2021 should see a CS academic advisor.
See also: Prerequisite Flowchart and Course Planning Forms
University and The Grainger College of Engineering Requirements (39 - 51 hours)
Hours |
Courses |
---|---|
4 | Composition I |
3 | Advanced Composition - can be completed by choosing one of the following options - see technical track requirements below for details: CS 211, CS 427 and CS 429; CS 492 and CS 493; CS 499 |
0 | ENG 100 |
3 | Science Elective |
8-10 | Physics Sequence - PHYS 211, 212. |
18 | Humanities and Social Sciences For specific requirements see the Liberal Education Electives page on The Grainger College of Engineering Undergraduate Advising website. |
0-12 | Foreign Language (Language Other Than English) |
Department of Computer Science Requirements
Hours |
Courses |
---|---|
1 |
CS 100 (recommended but not required) |
11-12 |
Calculus through Math 241 Calculus III |
3 |
MATH 257 Linear Algebra with Computational Applications (MATH 415 Applied Linear Algebra or MATH 416 Abstract Linear Algebra also satisfies this requirement ) |
3 |
CS 124 Introduction to Computer Science I |
3 |
CS 128 Introduction to Computer Science II |
3 |
CS 173 Discrete Structures |
2-3 |
CS 210 Ethical and Professional Issues in CS (2 hours) or CS 211 Ethical and Professional Conduct (3 hours) |
1 |
CS 222 Software Design Lab |
4 |
CS 225 Data Structure and Software Principles |
4 |
CS 233 Computer Architecture |
4 |
CS 241 System Programming |
3 |
CS 357 Numerical Methods I |
3 |
CS 361 Probability and Statistics for Computer Science (Current students can no longer substitute MATH 461 or STAT 400 after Fall 2018.) |
4 |
CS 374 Algorithms and Models of Computation |
3 |
CS 421 Programming Languages and Compilers |
18 |
Technical electives: Students must take a minimum of (6) six additional technical electives with at least eighteen (18) cumulative credit hours and chosen from CS 397 and the 400-level CS courses, not including CS 400, CS 401, CS 402, CS 403 or CS 491. CS 500-level courses may be used as technical electives, but only with special permission from the CS Academic Office. CS 397 and CS 499 may be used with a cumulative maximum of six (6) credits from them counting as technical electives. One "CS-like" course in another department (e.g., ECE) may also be counted as a CS 400-level course with permission of the CS Academic Office. Non-CS tech electives will not be considered in focus areas.
**Speak to a CS undergraduate advisor about Spring 2021, and Fall 2021 498 topics not listed on this page. |
6 |
Computer Science Advanced Electives: Students must take for a letter grade a minimum of two (2) advanced elective courses comprising at least six (6) credit hours. These advanced elective courses must be distinct from courses used to satisfy the technical electives. They may be chosen from CS 397 Individual Study and the 400-level coursework offered for letter grade in ANY area offered at the University of Illinois at Urbana-Champaign. (CS 491 and most other seminar courses do not count.) It is expected that students will select these additional advanced courses in a way that best augments their program of study. Consultation with a faculty mentors is highly encouraged. A maximum of six (6) credit hours of CS 397 may be used in the combination of technical electives and advanced electives. |
In addition, students have to complete a number of hours of free electives, which are courses beyond major and general education requirements that students complete to attain the 128 Total Hours Required. Caution: there are a few limitations on what students can take to complete free electives. These limitations are spelled out on this page on The Grainger College of Engineering Undergraduate Advising website.
Prerequisite Flowchart and Course Planning Forms - B.S. in Computer Science (from The Grainger College of Engineering)
Engineering Interactive Curriculum Map for students who began undergraduate work in fall 2021 or later. (Students who entered prior to fall 2013 should see a CS academic advisor.) This flowchart does not cover the technical elective and advanced elective requirements, which are discussed above.
Course planning forms provide a checklist of all requirements for the major and a framework for creating four-year plan on the back of the form. These forms vary, depending on when you entered the major. (Students who entered prior to fall 2013 should see a CS academic advisor.)
Students who entered Fall 2021 and later
Students who entered Fall 2018 until Fall 2021
Students who entered Fall 2016 until Fall 2018
Students who entered Fall 2013 to Fall 2016