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.

University of Michigan
Skills you'll gain: C (Programming Language), Python Programming, Programming Principles, System Programming, Computer Programming, Unix, Computer Science
Intermediate · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: File I/O, Embedded Software, C (Programming Language), Linux, Embedded Systems, Build Tools, Command-Line Interface, Operating Systems, Program Development, Software Installation, Development Environment, Application Development, Computer Programming
Beginner · Course · 1 - 3 Months

Skills you'll gain: Microsoft Visual Studio, C# (Programming Language), Integrated Development Environments, Programming Principles, Computer Programming, Command-Line Interface, Computational Logic
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Embedded Systems, C (Programming Language), Embedded Software, Data Structures, Programming Principles, Data Management, Performance Tuning, Software Development
Intermediate · Guided Project · Less Than 2 Hours

University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), Statistical Analysis, Automation, Program Development, Data Structures, Programming Principles, Algorithms, Computer Programming, Theoretical Computer Science, Data Storage, Descriptive Statistics, Data Visualization Software, Debugging
Beginner · Specialization · 3 - 6 Months

Microsoft
Skills you'll gain: C++ (Programming Language), API Design, Software Architecture, Software Design, Maintainability, Data Structures, Generative AI Agents, Data Validation, Performance Tuning, Application Frameworks, Verification And Validation, Algorithms, Debugging
Beginner · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Object Oriented Design, Unity Engine, Debugging, Object Oriented Programming (OOP), Game Design, Video Game Development, Software Design Patterns, Data Structures, C# (Programming Language), Prototyping, Programming Principles, Graph Theory, Computer Programming, Data Management, Event-Driven Programming, Software Architecture, Algorithms, File I/O, Data Storage, Application Development
Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), File I/O, C++ (Programming Language), Object Oriented Design, Debugging, Computer Programming, Event-Driven Programming, Video Game Development, Unity Engine, Data Structures, C# (Programming Language), Data Storage, 3D Assets, Development Environment, Game Design, Software Documentation, Software Design Patterns, User Interface (UI), Programming Principles
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Programming Principles, Data Structures, Computer Programming Tools, Development Environment, Debugging
Beginner · Course · 1 - 4 Weeks

Infosec
Skills you'll gain: Secure Coding, Computer Programming Tools, C and C++, Application Security, System Programming, C++ (Programming Language), C (Programming Language), Software Development Tools, Exploit development, Debugging, Interoperability, Unix, Embedded Systems, Vulnerability Assessments, Unix Commands, File I/O, Operating Systems, Data Security, Linux, Microsoft Windows
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Data Structures, Debugging
Intermediate · Course · 1 - 3 Months

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Interactive Design, Program Development, File I/O, Command-Line Interface, Control Panels, Development Environment, Debugging
Build toward a degree
Intermediate · Course · 1 - 4 Weeks