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.

The Hong Kong University of Science and Technology
Skills you'll gain: Animation and Game Design, Computational Thinking, Animations, Computational Logic, Programming Principles, Computer Programming, Storytelling, Game Design, Scripting, Solution Design, Event-Driven Programming
Beginner · Course · 1 - 3 Months

Peking University
Skills you'll gain: Programming Principles, C (Programming Language), Computer Science, Computer Programming, Computer Architecture, Program Development, Theoretical Computer Science, Data Structures, Computational Logic, Quantum computing, Data Storage
Mixed · Course · 3 - 6 Months

Peking University
Skills you'll gain: Object Oriented Programming (OOP), C (Programming Language), Programming Principles, Computer Programming, Data Structures
Mixed · Course · 1 - 3 Months

Ball State University
Skills you'll gain: Program Development, Data Analysis, Programming Principles, Statistical Analysis, Computer Programming, Analytics, Python Programming, Natural Language Processing, Computer Science, Text Mining, NumPy, Data Processing, Code Reusability, Mathematical Software, Debugging, Computational Logic, Data Manipulation
Build toward a degree
Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: File I/O, Memory Management, Maintainability, C (Programming Language), Software Engineering, System Programming, Systems Development Life Cycle, Software Development, Simulations, Command-Line Interface, Collaborative Software
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Computational Thinking, Program Development, Development Environment, C++ (Programming Language), C and C++, Computer Programming, Computational Logic, Computer Programming Tools, Integrated Development Environments, Maintainability
Beginner · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Code Reusability, Computer Programming, Memory Management, Programming Principles, Program Development
Intermediate · Course · 1 - 4 Weeks

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Code Reusability
Mixed · Course · 1 - 3 Months

Skills you'll gain: C (Programming Language), Game Design, Programming Principles, Video Game Development, System Programming, Program Development, Computational Logic, Data Validation, Command-Line Interface, Code Reusability, User Interface (UI), Data Structures
Beginner · Course · 1 - 4 Weeks

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

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Programming Principles, Computer Programming, Code Reusability, Data Storage
Beginner · Course · 1 - 4 Weeks

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