C programming courses can help you learn syntax, data structures, algorithms, and memory management. You can build skills in debugging, optimizing code, and implementing efficient algorithms. Many courses introduce tools like GCC for compiling code, GDB for debugging, and libraries such as the Standard Template Library (STL) to enhance functionality. You'll also explore concepts like pointers, file handling, and dynamic memory allocation, which are crucial for developing robust applications.

Stanford University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Bioinformatics, Theoretical Computer Science, Network Model, Programming Principles, Social Network Analysis, Network Analysis, Computational Thinking, Analysis, Computer Science, Network Routing, Probability, Pseudocode, Computational Logic, Operations Research
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: User Research, Cascading Style Sheets (CSS), User Experience Design, User Experience, Design Research, Linux Commands, Usability, Debugging, User Interface (UI), Software Versioning, Software Visualization, Web Content Accessibility Guidelines, Pseudocode, JavaScript Frameworks, User Interface and User Experience (UI/UX) Design, Javascript, Web Applications, Event-Driven Programming, Unit Testing, Application Programming Interface (API)
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months
LearnQuest
Skills you'll gain: Java Programming, Java, File I/O, Eclipse (Software), Object Oriented Programming (OOP), Object Oriented Design, Integrated Development Environments, Development Environment, Software Design, Computer Programming, Application Frameworks, Programming Principles, Virtual Machines, Web Development, Debugging, Data Persistence, Package and Software Management, Data Structures
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: SQL, Relational Databases, Stored Procedure, Databases, Query Languages, Jupyter, Data Manipulation, Data Analysis, Pandas (Python Package), Transaction Processing, Python Programming
Beginner · Course · 1 - 3 Months

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Development Environment, Engineering Software, Computer Programming, Data Structures, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Excel Macros, Programming Principles, Visual Basic (Programming Language), Computer Programming, Spreadsheet Software, Problem Solving, Automation, Algorithms, Debugging, Data Management, Data Cleansing
Beginner · Course · 1 - 3 Months

Skills you'll gain: Data Storytelling, Data Visualization, Data Ethics, Exploratory Data Analysis, Sampling (Statistics), Data Visualization Software, Feature Engineering, Regression Analysis, Descriptive Statistics, Logistic Regression, Statistical Hypothesis Testing, Model Evaluation, Data Analysis, Tableau Software, Data Science, Statistical Analysis, Machine Learning, Object Oriented Programming (OOP), Interviewing Skills, Python Programming
Build toward a degree
Advanced · Professional Certificate · 3 - 6 Months

Meta
Skills you'll gain: React Native, iOS Development, Core Data (Software), Restful API, Version Control, Apple iOS, User Research, Usability Testing, Apple Xcode, Data Structures, Swift Programming, Jest (JavaScript Testing Framework), User Interface (UI), Unix Commands, Git (Version Control System), Persona (User Experience), GitHub, Interaction Design, Mobile Development, Javascript
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: File I/O, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Data Structures, C (Programming Language), Development Environment, Software Design Patterns, Computational Thinking, Computer Programming, Programming Principles, Data Persistence, Algorithms, Maintainability, Simulations, Data Management, Prototyping
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: iOS Development, Apple iOS, Apple Xcode, User Interface (UI), Mobile Development, Swift Programming, Unit Testing, User Interface (UI) Design, UI Components, Mobile Development Tools, Objective-C (Programming Language), Application Development, Data Structures, Programming Principles, Software Testing, Object Oriented Programming (OOP), Integrated Development Environments, Development Environment, Prototyping, Storyboarding
Beginner · Specialization · 3 - 6 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Software Design, Software Design Patterns, Functional Design, Java, Programming Principles, Performance Tuning, Data Structures, Algorithms
Intermediate · Course · 1 - 3 Months

Rice University
Skills you'll gain: Data Visualization Software, File I/O, Data Visualization, Plot (Graphics), Package and Software Management, Python Programming, Data Cleansing, Programming Principles, Data Manipulation, Development Environment, Data Structures, Scripting, Data Storage, Data Import/Export, Data Processing, Data Analysis, Program Development, Data Integration, Scripting Languages, Computer Programming
Beginner · Specialization · 3 - 6 Months