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.

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Data Validation, Object Oriented Design, Programming Principles, Computer Programming, Data Structures, File Management, Integrated Development Environments, Data Store, Software Documentation, Computer Science, Functional Design, Pseudocode, Maintainability
Beginner · Specialization · 3 - 6 Months

Dartmouth College
Skills you'll gain: File I/O, Embedded Software, C (Programming Language), Linux, Embedded Systems, Build Tools, Command-Line Interface, Operating Systems, Program Development, Software Installation, Development Environment, Application Development, Computer Programming
Beginner · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: File I/O, Matlab, Computer Programming, Programming Principles, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), Data Structures, Engineering Calculations, Plot (Graphics), Problem Solving
Beginner · Course · 1 - 3 Months

University of Washington
Skills you'll gain: Software Installation, Programming Principles, Other Programming Languages, Functional Design, Computer Programming, Ruby (Programming Language), Theoretical Computer Science, Software Design, Computational Thinking
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Linux, Linux Commands, C (Programming Language), System Programming, Command-Line Interface, Programming Principles, Development Environment, Computer Programming Tools, Software Installation, Data Structures, Program Development, Debugging
Mixed · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, Embedded Software, System Programming, Computer Science, Computer Programming, Operating Systems, Data Structures, Linux
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), Program Development, Integrated Development Environments, Computer Science, Software Testing, Algorithms, Integration Testing, Software Design, System Design and Implementation, Distributed Computing, Software Documentation
Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Programming Principles, Data Structures, Computer Programming Tools, Development Environment, Debugging
Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Computer Architecture, Embedded Software, Computer Engineering, Computer Programming, Computer Science, Program Development, Data Structures, Linux, Debugging
Beginner · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Data Structures, System Programming, Algorithms, Computer Programming, Linux, Computer Programming Tools, Debugging
Beginner · Course · 1 - 3 Months

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