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 California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Code Reusability, Memory Management, Data Structures, File I/O
★ 4.4 (2.3K) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Debugging, Code Reusability, Computational Thinking, File Management, Programming Principles, C and C++, Program Development, Data Storage, Application Design, Algorithms
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Data Modeling, System Programming, C and C++, Data Integrity, File Management, Application Development, Business Logic, Computational Logic, Data Maintenance
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: C and C++, C++ (Programming Language), Development Environment, Performance Tuning, Test Tools, System Programming, Docker (Software), Computer Architecture, Containerization, Development Testing, Programming Principles, Software Development Tools, Hardware Architecture, Algorithms, Computer Programming, Python Programming, Debugging, Memory Management, Software-Defined Networking, Scripting
Intermediate · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: File I/O, Code Reusability, Matlab, Functional Design, Computer Programming Tools, Computer Programming, Programming Principles, Program Development, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), File Management, C (Programming Language), Data Structures, Computational Logic, Linear Algebra, Engineering Calculations, Problem Solving
★ 4.8 (18K) · Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Design, Software Design Patterns, Object Oriented Programming (OOP), Software Design, C (Programming Language), Algorithms, Memory Management, Graph Theory, Artificial Intelligence, Data Structures, Simulations
★ 4.5 (336) · Intermediate · Course · 1 - 3 Months

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

University of Colorado System
Skills you'll gain: Object Oriented Design, Unity Engine, Object Oriented Programming (OOP), Debugging, Video Game Development, Software Design Patterns, Data Structures, C# (Programming Language), Software Design, Game Design, Prototyping, Programming Principles, Graph Theory, Code Reusability, Computer Programming, Data Management, Event-Driven Programming, Code Review, Software Architecture, Application Design
★ 4.6 (2.8K) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Data Presentation, Scientific Visualization, Application Development, Object Oriented Design, Data Visualization Software, Statistical Visualization, Plot (Graphics), Application Design, Visualization (Computer Graphics), Programming Principles, Data Visualization, Graphical Tools, C and C++, Computational Thinking, Computer Graphic Techniques, Program Development, Graphic and Visual Design, Software Visualization
★ 2.8 (6) · Beginner · Specialization · 3 - 6 Months

Logical Operations
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Data Structures, File I/O, Debugging, Data Processing, Application Development, Code Reusability, Maintainability, File Management, File Systems, Programming Principles, Computer Programming, Python Programming, System Configuration, Operating Systems, Software Development, Virtual Machines, Cross Platform Development
★ 4.6 (14) · Beginner · Specialization · 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
★ 4.7 (3.9K) · Beginner · Course · 1 - 3 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
★ 2.7 (35) · Intermediate · Specialization · 3 - 6 Months