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.

National Taiwan University
Skills you'll gain: Programming Principles, Computer Programming, C (Programming Language), Data Structures, Algorithms, Computational Thinking, Debugging
Mixed · 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

University of Washington
Skills you'll gain: Ruby (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Software Design Patterns, Theoretical Computer Science, Computer Science, Debugging
Mixed · Course · 1 - 3 Months

É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

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

Dartmouth College
Skills you'll gain: Command-Line Interface, Linux Commands, Linux, Embedded Systems, Linux Servers, Computer Engineering, File Systems, Unix, Operating Systems, C (Programming Language), Computer Programming, Open Source Technology
Beginner · Course · 1 - 3 Months

Coursera
Skills you'll gain: Distributed Computing, Scalability, Performance Tuning, C++ (Programming Language), System Programming, Computer Architecture, Cross Platform Development, Hardware Architecture, C (Programming Language), Application Performance Management, Development Environment
Beginner · Course · 1 - 4 Weeks

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

Vanderbilt University
Skills you'll gain: Matlab, Algorithms, User Interface (UI), Object Oriented Programming (OOP), Mathematical Software, Computer Programming, Programming Principles, Application Development, Engineering Analysis, Scripting, Performance Tuning
Intermediate · Course · 1 - 3 Months

Ball State University
Skills you'll gain: Data Analysis, Programming Principles, Statistical Analysis, Computer Programming, Python Programming, Object Oriented Programming (OOP), Natural Language Processing, Scripting, NumPy, Algorithms, Debugging, Data Structures
Build toward a degree
Beginner · Course · 1 - 3 Months

Jordan University of Science and Technology
Skills you'll gain: Object Oriented Programming (OOP), C# (Programming Language), Software Engineering, Data Structures, Software Development, Computer Programming, Programming Principles, Java, Debugging, Query Languages
Intermediate · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C (Programming Language), Algorithms, File I/O, System Programming, Programming Principles, Data Structures, Secure Coding, Scaled Agile Framework
Intermediate · Course · 1 - 3 Months