• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
  • Online Degrees
  • Careers
  • Log In
  • Join for Free
    Coursera
    • Browse
    • C Programming

    C Programming Courses

    C programming courses can help you learn how to write efficient, low-level code used in systems programming, embedded systems, and software development.

    Skip to search results

    Filter by

    Subject
    Required
     *

    Language
    Required
     *

    The language used throughout the course, in both instruction and assessments.

    Learning Product
    Required
     *

    Build job-relevant skills in under 2 hours with hands-on tutorials.
    Learn from top instructors with graded assignments, videos, and discussion forums.
    Learn a new tool or skill in an interactive, hands-on environment.
    Get in-depth knowledge of a subject by completing a series of courses and projects.
    Earn career credentials from industry leaders that demonstrate your expertise.
    Earn career credentials while taking courses that count towards your Master’s degree.
    Earn your Bachelor’s or Master’s degree online for a fraction of the cost of in-person learning.
    Complete graduate-level learning without committing to a full degree program.
    Earn a university-issued career credential in a flexible, interactive format.

    Level
    Required
     *

    Duration
    Required
     *

    Skills
    Required
     *

    Subtitles
    Required
     *

    Educator
    Required
     *

    Find the Best C Programming Course for Your Goals

    • D

      Duke University

      Pointers, Arrays, and Recursion

      Skills you'll gain: C (Programming Language), Data Structures, Program Development, Algorithms, Computational Thinking, Computer Programming, Debugging

      4.3
      Rating, 4.3 out of 5 stars
      ·
      343 reviews

      Beginner · Course · 1 - 3 Months

    • D

      DeepLearning.AI

      Linear Algebra for Machine Learning and Data Science

      Skills you'll gain: Linear Algebra, NumPy, Dimensionality Reduction, Machine Learning Methods, Jupyter, Data Manipulation, Data Science, Applied Mathematics, Python Programming, Artificial Intelligence

      4.6
      Rating, 4.6 out of 5 stars
      ·
      2K reviews

      Intermediate · Course · 1 - 4 Weeks

    • G

      Google

      Using Python to Interact with the Operating System

      Skills you'll gain: Bash (Scripting Language), Unit Testing, Scripting, Unix Shell, Shell Script, Linux Commands, Test Driven Development (TDD), Unix Commands, Unix, Scripting Languages, Development Environment, Operating Systems, Command-Line Interface, File Management, OS Process Management, Automation, Debugging, Python Programming

      4.7
      Rating, 4.7 out of 5 stars
      ·
      6.5K reviews

      Beginner · Course · 1 - 3 Months

    • Status: New
      New
      I

      IBM

      IBM Product Owner

      Skills you'll gain: User Story, Sprint Retrospectives, Agile Product Development, Backlogs, Stakeholder Communications, Agile Software Development, Agile Methodology, Kanban Principles, Stakeholder Management, Cross-Functional Collaboration, Product Roadmaps, Information Technology, Agile Project Management, Computer Hardware, Prioritization, Virtual Teams, Product Strategy, Product Planning, Product Management, Sprint Planning

      4.8
      Rating, 4.8 out of 5 stars
      ·
      2.6K reviews

      Beginner · Professional Certificate · 3 - 6 Months

    • U

      University of California San Diego

      Big Data

      Skills you'll gain: Apache Spark, Apache Hadoop, Data Integration, Exploratory Data Analysis, Big Data, Graph Theory, Data Pipelines, Database Design, Data Modeling, Regression Analysis, Data Management, Applied Machine Learning, Data Presentation, Scalability, Data Mining, Data Processing, Statistical Analysis, Databases, NoSQL, Database Management Systems

      4.5
      Rating, 4.5 out of 5 stars
      ·
      14K reviews

      Beginner · Specialization · 3 - 6 Months

    • U

      University of California San Diego

      Introduction to Discrete Mathematics for Computer Science

      Skills you'll gain: Graph Theory, Logical Reasoning, Combinatorics, Computational Logic, Deductive Reasoning, Cryptography, Probability, Key Management, Computational Thinking, Encryption, Network Analysis, Public Key Cryptography Standards (PKCS), Algorithms, Theoretical Computer Science, Python Programming, Data Structures, Cybersecurity, Arithmetic, Computer Programming, Mathematical Modeling

      4.5
      Rating, 4.5 out of 5 stars
      ·
      3.6K reviews

      Beginner · Specialization · 3 - 6 Months

    • D

      DeepLearning.AI

      Natural Language Processing with Classification and Vector Spaces

      Skills you'll gain: Natural Language Processing, Supervised Learning, Dimensionality Reduction, Feature Engineering, Machine Learning Algorithms, Artificial Intelligence, Tensorflow, Linear Algebra, Probability & Statistics

      4.6
      Rating, 4.6 out of 5 stars
      ·
      4.6K reviews

      Intermediate · Course · 1 - 4 Weeks

    • H

      Hebrew University of Jerusalem

      Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)

      Skills you'll gain: Computer Architecture, Computer Hardware, Computational Logic, Computer Programming, System Design and Implementation, Technical Design, Software Design, Program Development, Debugging, Verification And Validation, Development Environment

      4.9
      Rating, 4.9 out of 5 stars
      ·
      3.7K reviews

      Mixed · Course · 1 - 3 Months

    • R

      Rice University

      Introduction to Scripting in Python

      Skills you'll gain: Data Visualization Software, Plot (Graphics), Package and Software Management, Python Programming, Programming Principles, Data Processing, Data Mapping, Data Manipulation, Software Installation, Development Environment, Data Structures, File Management, Scripting, Data Storage, Data Import/Export, Program Development, Data Integration, Data Analysis, Computer Programming, Integrated Development Environments

      4.7
      Rating, 4.7 out of 5 stars
      ·
      4.3K reviews

      Beginner · Specialization · 3 - 6 Months

    • Status: Free
      Free
      U

      Universidad Nacional Autónoma de México

      Introducción a Data Science: Programación Estadística con R

      Skills you'll gain: R Programming, Statistical Programming, Ggplot2, Data Manipulation, Simulations, Statistical Software, Data Science, Data Visualization, Graphing, Programming Principles, Data Import/Export, Scripting, Data Structures, Software Installation, Package and Software Management

      4.7
      Rating, 4.7 out of 5 stars
      ·
      8.5K reviews

      Beginner · Course · 1 - 3 Months

    • U

      University of Michigan

      Statistics with Python

      Skills you'll gain: Statistical Hypothesis Testing, Sampling (Statistics), Statistical Modeling, Statistical Methods, Statistical Inference, Statistics, Bayesian Statistics, Data Visualization, Matplotlib, Statistical Visualization, Probability & Statistics, Statistical Analysis, Jupyter, Statistical Programming, Regression Analysis, Data Visualization Software, Predictive Modeling, Data Analysis, Exploratory Data Analysis, Descriptive Statistics

      4.6
      Rating, 4.6 out of 5 stars
      ·
      3.3K reviews

      Beginner · Specialization · 1 - 3 Months

    • L

      LearnQuest

      Introduction to Computer Programming with Visual Basic

      Skills you'll gain: Unified Modeling Language, Visual Basic (Programming Language), Database Management, System Software, Databases, Relational Databases, Algorithms, Computer Architecture, Network Security, Computer Hardware, SQL, Computer Science, Development Environment, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Data Modeling, Program Development, Microsoft Development Tools, .NET Framework

      4.6
      Rating, 4.6 out of 5 stars
      ·
      162 reviews

      Beginner · Specialization · 3 - 6 Months

    Searches related to c programming

    c programming for everybody
    c programming with linux
    c programming: modular programming and memory management - 3
    c programming: getting started - 1
    c programming: pointers and memory management - 4
    c programming language family
    c programming: advanced data types - 5
    c programming: language foundations - 2
    1…192021…286

    In summary, here are 10 of our most popular c programming courses

    • Pointers, Arrays, and Recursion: Duke University
    • Linear Algebra for Machine Learning and Data Science: DeepLearning.AI
    • Using Python to Interact with the Operating System: Google
    • IBM Product Owner: IBM
    • Big Data: University of California San Diego
    • Introduction to Discrete Mathematics for Computer Science: University of California San Diego
    • Natural Language Processing with Classification and Vector Spaces: DeepLearning.AI
    • Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course): Hebrew University of Jerusalem
    • Introduction to Scripting in Python: Rice University
    • Introducción a Data Science: Programación Estadística con R: Universidad Nacional Autónoma de México

    Why Learn C Programming?

    C is a foundational programming language known for its speed, portability, and control over system resources. It’s widely used in operating systems, embedded devices, and performance-critical applications. Learning C programming can help you build a strong base in computer science, understand how software interacts with hardware, and prepare for more advanced coding challenges.

    Skills you can learn in Software Development

    Programming Language (34)
    Google (25)
    Computer Program (21)
    Software Testing (21)
    Web (19)
    Google Cloud Platform (18)
    Application Programming Interfaces (17)
    Data Structure (16)
    Problem Solving (14)
    Object-oriented Programming (13)
    Kubernetes (10)
    List & Label (10)

    Frequently Asked Questions about C Programming

    Whether you’re learning C programming for software development, systems programming, or academic purposes, having a clear goal can guide your learning. Consistent practice with coding and debugging is critical. Join communities like Stack Overflow or Reddit's r/C_Programming to ask questions and share knowledge. Work on real projects such as creating small programs. Introduction to C and C++ Specialization by Duke University on is a great starting resource.‎

    Coursera's C Programming courses provide learners with a robust set of skills essential for software development:

    • Fundamental syntax and semantics of the C language
    • Techniques for effective problem solving and algorithm development
    • Understanding of memory management and the use of pointers
    • Skills in writing, compiling, and debugging C programs
    • Best practices for writing secure and efficient code
    • Application of C in developing firmware and operating systems‎

    C Programming courses on Coursera are structured to accommodate all learners:

    • Beginners without any programming experience can start with the basics of C.
    • Those with some programming background can improve their understanding of complex C concepts.
    • Advanced users can explore in-depth topics such as system programming and advanced data structures in C.‎

    Upon completing C Programming courses on Coursera, you have the opportunity to earn credentials that can support your professional growth:

    • Professional certificates that help confirm your understanding and skills in C programming.
    • Specializations that explore specific applications or advanced topics within C programming.
    • Certificates that may be valued by employers within the tech industry, reflecting your commitment to learning and developing relevant skills.‎

    Proficiency in C Programming can lead to a variety of technical roles, including:

    • Software Developer creating system software and embedded applications
    • Systems Engineer designing and implementing system solutions
    • Embedded Systems Developer working on hardware-software integration
    • Performance Engineer optimizing software for speed and efficiency
    • Technical Support Engineer troubleshooting and resolving code issues‎

    Yes, Coursera offers a variety of free courses across many topics, including C programming. While you can access most course materials for free by auditing the courses, this does not include graded assignments or a completion certificate. For those looking to obtain a certificate to showcase their learning or enhance their professional profile, Coursera provides the option to purchase the course. Additionally, Coursera offers free trials or financial aid to learners who qualify, making certifications more accessible to everyone.‎

    This FAQ content has been made available for informational purposes only. Learners are advised to conduct additional research to ensure that courses and other credentials pursued meet their personal, professional, and financial goals.

    Other topics to explore

    Arts and Humanities
    338 courses
    Business
    1095 courses
    Computer Science
    668 courses
    Data Science
    425 courses
    Information Technology
    145 courses
    Health
    471 courses
    Math and Logic
    70 courses
    Personal Development
    137 courses
    Physical Science and Engineering
    413 courses
    Social Sciences
    401 courses
    Language Learning
    150 courses

    Coursera Footer

    Technical Skills

    • ChatGPT
    • Coding
    • Computer Science
    • Cybersecurity
    • DevOps
    • Ethical Hacking
    • Generative AI
    • Java Programming
    • Python
    • Web Development

    Analytical Skills

    • Artificial Intelligence
    • Big Data
    • Business Analysis
    • Data Analytics
    • Data Science
    • Financial Modeling
    • Machine Learning
    • Microsoft Excel
    • Microsoft Power BI
    • SQL

    Business Skills

    • Accounting
    • Digital Marketing
    • E-commerce
    • Finance
    • Google
    • Graphic Design
    • IBM
    • Marketing
    • Project Management
    • Social Media Marketing

    Career Resources

    • Essential IT Certifications
    • High-Income Skills to Learn
    • How to Get a PMP Certification
    • How to Learn Artificial Intelligence
    • Popular Cybersecurity Certifications
    • Popular Data Analytics Certifications
    • What Does a Data Analyst Do?
    • Career Development Resources
    • Career Aptitude Test
    • Share your Coursera Learning Story

    Coursera

    • About
    • What We Offer
    • Leadership
    • Careers
    • Catalog
    • Coursera Plus
    • Professional Certificates
    • MasterTrack® Certificates
    • Degrees
    • For Enterprise
    • For Government
    • For Campus
    • Become a Partner
    • Social Impact
    • Free Courses
    • ECTS Credit Recommendations

    Community

    • Learners
    • Partners
    • Beta Testers
    • Blog
    • The Coursera Podcast
    • Tech Blog
    • Teaching Center

    More

    • Press
    • Investors
    • Terms
    • Privacy
    • Help
    • Accessibility
    • Contact
    • Articles
    • Directory
    • Affiliates
    • Modern Slavery Statement
    • Do Not Sell/Share
    Learn Anywhere
    Download on the App Store
    Get it on Google Play
    Logo of Certified B Corporation
    © 2025 Coursera Inc. All rights reserved.
    • Coursera Facebook
    • Coursera Linkedin
    • Coursera Twitter
    • Coursera YouTube
    • Coursera Instagram
    • Coursera TikTok