Computer Science
What this major studies in college, how to prepare in high school where a source says so, and careers open with a bachelor’s degree. Every fact below names its source.
Last checked:
What it is
Computer science is the study of computation, including its principles and foundations, its efficient implementation, its analysis, and its practical use in many different application areas. [1]
Computer science is far more than just programming. [1]
Typical college courses
The computer science curriculum guidelines of ACM, the IEEE Computer Society and AAAI, the knowledge areas of computer science include Software Development Fundamentals, Algorithmic Foundations, Systems Fundamentals, Software Engineering, Security, and Mathematical and Statistical Foundations. [2] [3]
The computer science B.S. requires, each with a grade of C or better, Advanced Data Structures and Algorithms in C, Computer Systems I, Software Engineering Principles, and Discrete Mathematics for Computer Science, among other courses. [1]
The rows below show one named program as an example: the Penn State bachelor of science in computer science (University Park), 2026–2027 bulletin. Course descriptions are in our own words. Course names and numbers differ at every college; confirm each college’s own list.
| Course | Status | What it covers (example: Penn State bulletin) | Comes after |
|---|---|---|---|
| Programming and Computation I and II (or Introduction to Programming Techniques and Intermediate Programming) | One of the choices in this example programStudents entering the computer science major at University Park need a grade of C or better in CMPSC 121 or CMPSC 131, CMPSC 122 or CMPSC 132, MATH 140, MATH 141 and PHYS 211, along with other requirements, including 29 to 55 graded Penn State credits and a minimum cumulative GPA of 3.20. [1] | Programming and Computation I (CMPSC 131) introduces the basic ideas and steps of solving problems with computation, and Programming and Computation II (CMPSC 132) adds object-oriented programming, data structures such as stacks, queues, trees, graphs and linked lists, and the design and analysis of efficient algorithms. [4] | MATH 110 or MATH 140 is taken before or at the same time as CMPSC 131, and CMPSC 132 comes after CMPSC 121 or CMPSC 131. [4] |
| Discrete Mathematics for Computer Science | Required in this example program[1] | Discrete Mathematics for Computer Science (CMPSC 360) covers the math behind modern computer science: logic, sets and relations, graphs, algorithms, and finite state machines with regular expressions. [4] | CMPSC 122 or CMPSC 132 is taken before or at the same time. [4] |
Get ready with these topics: Mathematical induction · Counting and combinations · Sequences and summation notation · Reasoning and conditional statements | |||
| Advanced Data Structures and Algorithms in C | Required in this example program[1] | Advanced Data Structures and Algorithms in C (CMPSC 222) is a practical course in designing, building and analyzing advanced data structures such as heaps and balanced trees, graph algorithms and pattern-matching algorithms, using the C language. [4] | It comes after CMPSC 122 or CMPSC 132. [4] |
| Computer Systems I | Required in this example program[1] | Computer Systems I (CMPSC 315), the first of two courses on the hardware and system software that let programs run, covers processor design, including pipelining and instruction scheduling, and system topics such as turning C code into assembly, processes, threads and CPU scheduling. [4] | It comes after CMPEN 270 (or CMPEN 271 and CMPEN 275) and CMPSC 222. [4] |
Get ready with these topics: How computers work: hardware, software and abstraction · How data is represented | |||
| Software Engineering Principles | Required in this example program[1] | Software Engineering Principles (CMPSC 320) takes students through the whole software development lifecycle, including requirements, project and risk management, design, testing, quality assurance, and ethical and security issues such as privacy and intellectual property. [4] | It comes after CMPSC 221. [4] |
| Elementary Probability (one of three choices) | One of the choices in this example programThe B.S. also requires one of Elementary Probability, Introduction to Probability Theory, or Introduction to Probability and Stochastic Processes for Engineering. [1] | Elementary Probability (STAT 318) covers counting methods, the axioms of probability, conditional probability and independence. [5] | It comes after MATH 141. [5] |
Get ready with these topics: Probability rules · Conditional probability and independence · Random variables and expected value · Binomial distributions · The normal model | |||
Typical high school preparation
We did not find an official source that gives high school course advice for this major, so none is listed. For the high school courses colleges ask for in general, see the College Preparation page.
Related majors
Each card opens that major’s page. Compare the courses before you choose, and confirm each college’s own list.
Data Science
Data sciences is a field that develops, applies and checks methods, systems and tools for drawing useful knowledge, sound conclusions and actionable insights from large, complex and varied data. [6]
Information Technology
Penn State's information sciences and technology degree builds an understanding of core information technologies, prepares students to apply information sciences and related technologies in practice, and sharpens their ability to think critically and work in teams. [7]
Cybersecurity
Penn State's bachelor of science in cybersecurity analytics and operations is an interdisciplinary program that prepares students for careers as cybersecurity professionals. [8]
Computer Engineering
Typical courses, licensing and careers, with sources.
Where this degree can lead with a bachelor’s
National figures from the U.S. Bureau of Labor Statistics. Pay varies by state, setting and experience. This is not a promise of pay or a job.
Examples from the BLS Occupational Outlook Handbook. Other careers may need more study after the bachelor’s degree.
Software developers
Software developers design computer applications or programs. [9]
The median annual wage for software developers was $135,980 in May 2025. [9]
Overall employment of software developers, quality assurance analysts and testers is projected to grow 10 percent from 2025 to 2035, much faster than the average for all occupations. [9]
Software developers, quality assurance analysts and testers typically need a bachelor's degree in computer and information technology or a related field, such as engineering or mathematics. [9]
Computer and information research scientists
Computer and information research scientists design innovative uses for new and existing computing technology. [10]
In the federal government a bachelor's degree may be sufficient for some computer and information research scientist jobs. [10]
The median annual wage for computer and information research scientists was $140,300 in May 2025. [10]
Employment of computer and information research scientists is projected to grow 22 percent from 2025 to 2035, much faster than the average for all occupations. [10]
Computer and information research scientists typically need at least a master's degree in computer science or a related field. [10]
Questions people search
Chosen from our search-question research. Every answer is cited.
What can you do with a computer science degree?
Software developers, quality assurance analysts and testers typically need a bachelor's degree in computer and information technology or a related field, such as engineering or mathematics. [9]
Computer and information research scientists typically need at least a master's degree in computer science or a related field. [10]
What classes do computer science majors take?
The computer science B.S. requires, each with a grade of C or better, Advanced Data Structures and Algorithms in C, Computer Systems I, Software Engineering Principles, and Discrete Mathematics for Computer Science, among other courses. [1]
The computer science curriculum guidelines of ACM, the IEEE Computer Society and AAAI, the knowledge areas of computer science include Software Development Fundamentals, Algorithmic Foundations, Systems Fundamentals, Software Engineering, Security, and Mathematical and Statistical Foundations. [2] [3]
Your next step
Find out where you stand in math and reading today with a free placement test, then fill the gaps one step at a time.
Free for students, teens and adults. No card needed.
Sources
- The Pennsylvania State University. Computer Science, B.S.. https://bulletins.psu.edu/undergraduate/colleges/engineering/computer-science-bs/. 2026–2027 Undergraduate Bulletin. Checked .
- ACM, IEEE Computer Society and AAAI. CS2023: ACM/IEEE-CS/AAAI Computer Science Curricula. https://csed.acm.org/. CS2023 (endorsed by ACM January 18, 2024, IEEE-CS January 22, 2024 and AAAI February 22, 2024). Checked .
- ACM, IEEE Computer Society and AAAI. Knowledge Areas of CS2023. https://csed.acm.org/knowledge-areas/. CS2023. Checked .
- The Pennsylvania State University. Computer Science (CMPSC) course descriptions. https://bulletins.psu.edu/university-course-descriptions/undergraduate/cmpsc/. current University Bulletins (the MATH and EDSGN course pages show the 2026–27 edition). Checked .
- The Pennsylvania State University. Statistics (STAT) course descriptions. https://bulletins.psu.edu/university-course-descriptions/undergraduate/stat/. current University Bulletins (the BMB, BIOL and NUTR course pages show the 2026–27 edition). Checked .
- The Pennsylvania State University. Data Sciences, B.S.. https://bulletins.psu.edu/undergraduate/colleges/engineering/data-sciences-bs/. 2026–2027 Undergraduate Bulletin. Checked .
- The Pennsylvania State University. Information Sciences and Technology, B.S.. https://bulletins.psu.edu/undergraduate/colleges/information-sciences-technology/information-sciences-technology-bs/. 2026–2027 Undergraduate Bulletin. Checked .
- The Pennsylvania State University. Cybersecurity Analytics and Operations, B.S.. https://bulletins.psu.edu/undergraduate/colleges/information-sciences-technology/cybersecurity-analytics-operations-bs/. 2026–2027 Undergraduate Bulletin. Checked .
- U.S. Bureau of Labor Statistics. Occupational Outlook Handbook: Software Developers, Quality Assurance Analysts, and Testers. https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm. OOH page last modified August 27, 2026 (pay data May 2025; projections 2025–35). Checked .
- U.S. Bureau of Labor Statistics. Occupational Outlook Handbook: Computer and Information Research Scientists. https://www.bls.gov/ooh/computer-and-information-technology/computer-and-information-research-scientists.htm. OOH page last modified August 27, 2026 (pay data May 2025; projections 2025–35). Checked .
Format: Publisher. Page title. URL. Edition or catalog year. Checked date.