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.

Skills you'll gain: Embedded Software, Embedded Systems, C and C++, 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, Computer Programming Tools, Code Reusability, System Configuration, Peripheral Devices, Software Installation
Intermediate · Course · 1 - 3 Months

The University of Edinburgh
Skills you'll gain: Video Game Development, Game Design, Software Engineering, Programming Principles, Software Development, Event-Driven Programming, Computer Programming, Code Reusability, Computational Thinking, Algorithms
Beginner · Course · 1 - 3 Months

Simplilearn
Skills you'll gain: C# (Programming Language), Restful API, Unity Engine, Application Programming Interface (API), Object Oriented Programming (OOP), C++ (Programming Language), Video Game Development, ASP.NET, Computer Programming, Object-Relational Mapping, Web Services, Application Development, Software Design Patterns, Database Management, Model View Controller, Programming Principles, Data Structures
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Debugging, Version Control, Microsoft Copilot, C# (Programming Language), Git (Version Control System), Microsoft Visual Studio, .NET Framework, Software Versioning, Computer Programming Tools, Program Development, Integrated Development Environments, Application Development, Computer Programming, Microsoft Development Tools, Development Environment, UI Components, User Interface (UI), Programming Principles, Event-Driven Programming, Computational Logic
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, C and C++, Object Oriented Programming (OOP), Object Oriented Design, Software Design Patterns, Debugging, Computer Programming, Programming Principles, Unit Testing, Algorithms, C (Programming Language), Program Development, Software Design, Graph Theory, Software Testing, Computer Science, Code Reusability
Intermediate · Specialization · 3 - 6 Months

Infosec
Skills you'll gain: Secure Coding, C and C++, Application Security, Computer Programming Tools, System Programming, C++ (Programming Language), Software Development Tools, Exploit development, C (Programming Language), Security Software, Debugging, Security Engineering, Security Testing, Interoperability, Unix, Embedded Software, Information Systems Security, OS Process Management, Embedded Systems, Programming Principles
Intermediate · Specialization · 3 - 6 Months

National Taiwan University
Skills you'll gain: Programming Principles, Computer Programming, C (Programming Language), Data Structures, C and C++, Program Development, Memory Management
Mixed · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Programming Principles, Computer Programming, Code Reusability, Data Storage
Beginner · Course · 1 - 4 Weeks

Ball State University
Skills you'll gain: Program Development, Data Analysis, Programming Principles, Statistical Analysis, Computer Programming, Analytics, Python Programming, Natural Language Processing, Computer Science, Text Mining, NumPy, Data Processing, Code Reusability, Mathematical Software, Debugging, Computational Logic, Data Manipulation
Build toward a degree
Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: File I/O, Memory Management, C and C++, C++ (Programming Language), Code Reusability, Vibe coding, API Design, Software Architecture, Software Design, Functional Design, Maintainability, Data Import/Export, Data Structures, AI literacy, AI Integrations, Data Validation, Performance Tuning, Secure Coding, Build Tools, Package and Software Management
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Memory Management, C and C++, C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Structures, Software Design, Python Programming, Java, Algorithms, Performance Tuning
Intermediate · Course · 1 - 3 Months

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