C programming courses can help you learn how to write efficient, low-level code used in systems programming, embedded systems, and software development.

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures, Software Engineering, File Management
Beginner · Specialization · 3 - 6 Months

Northeastern University
Skills you'll gain: Operations Research, Applied Mathematics, Mathematical Software, Operational Analysis, Linear Algebra, Mathematical Modeling, Algorithms, Business Modeling, Complex Problem Solving
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Go (Programming Language), Back-End Web Development, Object Oriented Programming (OOP), System Programming, Debugging, Algorithms, OS Process Management, Functional Design, Computer Programming Tools, Data Access, Data Structures, Software Design, Operating Systems, Computer Architecture
Intermediate · Specialization · 3 - 6 Months

University of Pennsylvania
Skills you'll gain: Data Structures, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Scripting, Software Development Tools, Integrated Development Environments, Data Import/Export, Jupyter, File Management
Beginner · Course · 1 - 4 Weeks
Duke University
Skills you'll gain: Java Programming, Software Design, Debugging, Software Engineering, Javascript, Computer Programming, Event-Driven Programming, Encryption, Algorithms, Image Analysis, Web Applications, Data Processing, Statistical Analysis, Data Import/Export, Predictive Modeling, Integrated Development Environments, Data Manipulation, Data Analysis, Web Servers, Cascading Style Sheets (CSS)
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Java Programming, Java, Development Environment, Programming Principles, Computer Programming, Integrated Development Environments, Object Oriented Programming (OOP), Data Structures, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: SAS (Software), Data Import/Export, Data Validation, Data Access, Data Manipulation, Statistical Programming, Data Cleansing, Exploratory Data Analysis, Data Analysis, SQL, Microsoft Excel, Descriptive Statistics
Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Rmarkdown, Version Control, Web Scraping, Regression Analysis, Knitr, Exploratory Data Analysis, Statistical Analysis, Data Manipulation, Dimensionality Reduction, Ggplot2, Geospatial Information and Technology, Time Series Analysis and Forecasting, Plotly, Shiny (R Package), Data Cleansing, Data Visualization, Data Wrangling, Software Documentation, R Programming, Microsoft Copilot
Beginner · Professional Certificate · 3 - 6 Months

University of California San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, Algorithms, Software Engineering, Data Structures, Programming Principles, Software Documentation, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Microsoft Visual Studio, Debugging, R Programming, Data Structures, Programming Principles, Statistical Programming, Development Environment, Data Manipulation, Integrated Development Environments, Data Transformation, Scripting Languages, Scripting, Software Installation
Beginner · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Version Control, GitHub, Debugging, Git (Version Control System), Unit Testing, Data Structures, Python Programming, Software Testing, Programming Principles, Scripting, Computer Programming, Web Development, Algorithms, Program Development, Development Environment, Scripting Languages, Integrated Development Environments, Object Oriented Programming (OOP), Jupyter
Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, Java, Algorithms, Java Programming, Statistical Analysis, Software Design, Computer Programming, Data Import/Export, Integrated Development Environments, Data Manipulation, Object Oriented Programming (OOP), Data Analysis, Software Testing, Problem Solving
Beginner · Course · 1 - 3 Months