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), C (Programming Language), Object Oriented Programming (OOP), Data Structures, System Programming, Computer Programming, Software Design, Python Programming, Java Programming, Algorithms, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Software Design Patterns, Peripheral Devices, Debugging
Intermediate · Course · 1 - 3 Months

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, File I/O, Programming Principles, Data Structures, Data Modeling
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

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

University of Colorado System
Skills you'll gain: File I/O, Simulations, C (Programming Language), Computational Thinking, Automation, Algorithms, Data Structures, Theoretical Computer Science, Programming Principles, Debugging
Beginner · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: File I/O, Maintainability, Program Development, C (Programming Language), Software Engineering, System Programming, Software Development, Simulations, Command-Line Interface, Operating Systems, User Interface (UI), Data Structures, Debugging
Beginner · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Objective-C (Programming Language), iOS Development, Apple iOS, Apple Xcode, Prototyping, Mobile Development, C (Programming Language), Object Oriented Programming (OOP), Computer Programming, Data Structures
Mixed · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Computational Thinking, Data Collection, Microsoft Visual Studio, Program Development, C (Programming Language), Programming Principles, Algorithms, Data Storage, Computer Programming
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, Computer Hardware, Hardware Architecture, Internet Of Things, Peripheral Devices, C (Programming Language), Software Architecture, Simulations, Debugging, Systems Integration
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Program Development, C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Development Environment, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Embedded Systems, Embedded Software, Computer Systems, Internet Of Things, C (Programming Language), Peripheral Devices, Wireless Networks, Computer Architecture, Cybersecurity, Cloud Computing, Development Environment, Debugging
Intermediate · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: C++ (Programming Language), Programming Principles, Data Structures, Computer Programming, Game Design, Algorithms, Debugging
Beginner · Course · 1 - 3 Months