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.

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

University of London
Skills you'll gain: Debugging, Development Environment, Javascript, Computer Programming Tools, Computer Graphics, Software Development Tools, Computer Programming, Graphical Tools, Interactive Design, Human Computer Interaction, Data Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Version Control, Object Oriented Programming (OOP), C# (Programming Language), Microsoft Visual Studio, Development Environment, Program Development, Integrated Development Environments, Computer Programming, Programming Principles
Beginner · Course · 3 - 6 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

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

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

Peking University
Skills you'll gain: C# (Programming Language), Object Oriented Programming (OOP), C++ (Programming Language), Computer Programming, Microsoft Visual Studio, Extensible Markup Language (XML), Data Structures, Data Access, Java, Database Management, User Interface (UI), C (Programming Language), Algorithms, Application Development, Network Model
Intermediate · Course · 3 - 6 Months

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

University of Washington
Skills you'll gain: Other Programming Languages, Software Design, Ruby (Programming Language), Programming Principles, Data Structures, Software Architecture, Computer Programming, Functional Design, Debugging
Intermediate · Course · 1 - 4 Weeks

É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: Application Security, System Programming, Secure Coding, C++ (Programming Language), C (Programming Language), Debugging, Interoperability, File I/O, Data Validation
Mixed · Course · 1 - 4 Weeks

Infosec
Skills you'll gain: Exploit development, C (Programming Language), C++ (Programming Language), Secure Coding, Application Security, System Programming, Debugging, Vulnerability Assessments
Mixed · Course · 1 - 4 Weeks