C programming courses can help you learn syntax, data structures, memory management, and algorithm design. You can build skills in problem-solving, debugging, and optimizing code for performance. Many courses introduce tools like GCC for compiling, GDB for debugging, and various libraries that enhance functionality. You’ll also explore applied areas such as game development, embedded systems, and software engineering practices, allowing you to create efficient applications and understand how C interacts with hardware.

University of Illinois Urbana-Champaign
Skills you'll gain: Data Visualization, Data Visualization Software, Text Mining, Data Presentation, Data Mining, Dashboard, Tableau Software, Plot (Graphics), Dashboard Creation, Natural Language Processing, Data Mapping, Statistical Analysis, Graphing, Big Data, Data-Driven Decision-Making, Analytics, Data Analysis, Statistical Methods, Probability & Statistics, Model Evaluation
★ 4.5 (3K) · Intermediate · Specialization · 3 - 6 Months
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, File I/O, Interactive Data Visualization, Java, Java Programming, Object Oriented Design, Object Oriented Programming (OOP), User Interface (UI), Debugging, Software Testing, Computer Programming, Cryptography, Program Development, Software Engineering, Algorithms, Data Analysis, Software Design, Problem Solving
★ 4.6 (15K) · Beginner · Specialization · 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: Embedded Software
★ 4.7 (76) · Intermediate · Course · 1 - 4 Weeks

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Graph Theory, Development Environment, Data Storage, Engineering Software, Computer Programming, Software Engineering, Algorithms, Memory Management, Computer Programming Tools, Debugging, Program Development, Database Systems
★ 4.7 (3.5K) · Intermediate · Specialization · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), Electronic Components, Computer Hardware, Integrated Development Environments, Programming Principles, Computer Programming, Electronics Engineering, Software Installation, Development Environment, Digital Communications
★ 4.7 (7.2K) · Mixed · Course · 1 - 4 Weeks

Universitat Autònoma de Barcelona
Skills you'll gain: Crisis Intervention, Stress First Aid, Emergency Response, First Aid, Stress Management, Disabilities, Mental Health, Family Support, Working With Children
★ 4.9 (12K) · Beginner · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Computer Science, Software Testing, Algorithms, Code Reusability, Computational Logic
★ 4.5 (7.3K) · 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 Colorado System
Skills you'll gain: TCP/IP, Local Area Networks, Routing Protocols, Network Routing, Digital Communications, OSI Models, Network Protocols, Open Shortest Path First (OSPF), Network Architecture, Dynamic Host Configuration Protocol (DHCP), Network Planning And Design, Network Security, Network Performance Management, Computer Networking, General Networking, Wireless Networks, Software-Defined Networking, Algorithms, Network Analysis
★ 4.6 (3.4K) · Intermediate · 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 San Diego
Skills you'll gain: Data Structures, Algorithms, Data Storage, Computer Programming, C++ (Programming Language), Java Programming, Java
★ 4.6 (5.6K) · Intermediate · Course · 1 - 3 Months