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: Linux, C (Programming Language), Linux Commands, System Programming, Command-Line Interface, Arithmetic, Build Tools, Programming Principles, C and C++, Development Environment, Program Development, Computer Programming Tools, Software Development Tools, Decision Making, Software Development, Software Installation, Environment
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Game Design, C and C++, Video Game Development, Animation and Game Design, Object Oriented Design, Software Design Patterns, Animations, Memory Management, Software Architecture, Computer Graphics, Programming Principles, Objective-C (Programming Language), C (Programming Language), Code Reusability, Computer Graphic Techniques, Microsoft Visual Studio, Computational Logic, Artificial Intelligence
Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Object Oriented Design, Unity Engine, Object Oriented Programming (OOP), Video Game Development, Software Design Patterns, C# (Programming Language), Debugging, Data Structures, Game Design, Prototyping, Data Storage, Code Reusability, Event-Driven Programming, Software Architecture, Algorithms, File I/O, User Requirements Documents, Computer Programming, Programming Principles, Development Testing
★ 4.7 (2.8K) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Serial Peripheral Interface, Embedded Software, Embedded Systems, System Programming, Computer Programming Tools, Electronic Hardware, Software Development Tools, Debugging, Development Environment, C (Programming Language), Hardware Design, Build Tools, Peripheral Devices, Display Devices
Intermediate · Course · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Algorithms, C (Programming Language), Graph Theory, Code Reusability, Memory Management
★ 4.4 (2.3K) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Programming Principles, Data Modeling, Data Integrity, Application Development
Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Algorithms
★ 4.6 (798) · Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: C++ (Programming Language), Video Game Development
★ 4.5 (214) · Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Graph Theory, Software Testing, Code Reusability, Memory Management, Artificial Intelligence
★ 4.4 (2.5K) · Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: File I/O, Debugging, Go (Programming Language), C (Programming Language), Data Structures, Computer Programming, Algorithms
★ 3.9 (10) · Beginner · Course · 1 - 3 Months

The Hong Kong University of Science and Technology
Skills you'll gain: Computational Thinking, Animations, Video Game Development, Programming Principles, Computer Programming, Storytelling, Coordination
★ 4.4 (117) · Beginner · Course · 1 - 3 Months

EDUCBA
Skills you'll gain: C (Programming Language), Embedded Systems, Embedded Software, Debugging, Computer Architecture, Data Structures, Memory Management
★ 4.3 (197) · Beginner · Course · 1 - 4 Weeks