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.

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Computational Thinking, Data Structures, Design Strategies, Quantum computing, Applied Mathematics, Python Programming, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks

EDUCBA
Intermediate · Course · 1 - 3 Months

EDUCBA
Skills you'll gain: File I/O, Object Oriented Programming (OOP), Java Programming, Data Structures, Java, Data Persistence, Programming Principles, Data Store, Persistence
Intermediate · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: R (Software), Tidyverse (R Package), Web Scraping, Data Manipulation, Data Wrangling, R Programming, Data Transformation, Memory Management, Data Cleansing, Data Science, Statistical Programming, Data Integration, Data Processing, grep, Text Mining, Data Import/Export, Web Services, Data Analysis, Data Structures
Intermediate · Course · 1 - 3 Months

JetBrains
Skills you'll gain: Application Development, Application Deployment, Generative AI Agents, Large Language Modeling, Software Development Tools, LLM Application, AI literacy, IntelliJ IDEA, Agentic Workflows, Artificial Intelligence and Machine Learning (AI/ML), Generative AI, Integrated Development Environments, Agentic systems, Code Review, Software Development, Software Development Life Cycle
Beginner · Course · 1 - 3 Months

Skills you'll gain: Swift Programming, Apple Xcode, iOS Development, Apple iOS, Data Structures, Programming Principles, Mobile Development, Code Reusability, Data Storage, Application Development, Object Oriented Programming (OOP), Development Environment, Computer Programming, Web Development
Beginner · Course · 1 - 3 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, Software Engineering, Bioinformatics, Algorithms, Data Analysis, Software Design, Problem Solving
Beginner · Specialization · 3 - 6 Months

Packt
Skills you'll gain: Go (Programming Language), Memory Management, Data Structures, System Programming, Other Programming Languages, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Kotlin, Android Studio, Android Development, Unit Testing, Object Oriented Programming (OOP), Test Driven Development (TDD), Software Testing, Mobile Development, Application Development, Functional Design, Programming Principles
Intermediate · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Program Development, Data Validation, Object Oriented Programming (OOP), Build Tools, Programming Principles, Object Oriented Design, Algorithms, Software Testing, Enterprise Modeling, Unit Testing, Data Structures, Data Modeling
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Code Reusability, Kotlin, Object Oriented Programming (OOP), Programming Principles, Android Development, Data Structures, Computer Programming, Mobile Development
Beginner · Course · 1 - 4 Weeks

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