- Algorithms
- C Programming
- coding
- C++
- Computer Programming
- Graph Theory
- C++11
- Graph Algorithms
- Standard Template Library
Coding for Everyone: C and C++ Specialization
Beginner to Programmer — Learn to Code in C & C++. Gain a deep understanding of computer programming by learning to code, debug, and solve complex problems with C and C++.
Offered By
What you will learn
Write and debug code in C and C++ programming languages
Understand algorithms, and how to properly express them
Skills you will gain
About this Specialization
Applied Learning Project
Learners in this specialization will start coding right from the start. Every module presents ample opportunities for writing programs and finding errors in the learner's own and others' code. Building on their knowledge, learners will demonstrate their understanding of coding in a practice-intensive final assessment.
Familiarity with any other programming language; some graph theory.
Familiarity with any other programming language; some graph theory.
How the Specialization Works
Take Courses
A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.
Hands-on Project
Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.
Earn a Certificate
When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.

There are 4 Courses in this Specialization
C for Everyone: Programming Fundamentals
This course is for everyone. In the new world we live in, coding is a universally valuable skill, whether you're a scientist, artist, or a humanist. Algorithms are everywhere, and we all have to understand how they work. The C language is particularly well suited as an introduction to coding: It's a tried-and-true language, and it allows you to understand computing processes at a deep level.
C for Everyone: Structured Programming
In the new world we live in, coding is a universally valuable skill, whether you're a scientist, artist, or a humanist. Algorithms are everywhere, and we all have to understand how they work. The C language is particularly well suited as an introduction to coding: It's a tried-and-true language, and it allows you to understand computing processes at a deep level. You will also get an introduction to more advanced programming in C++ in the final module.
C++ For C Programmers, Part A
This course is for experienced C programmers who want to program in C++. The examples and exercises require a basic understanding of algorithms and object-oriented software.
C++ For C Programmers, Part B
This course is for experienced C programmers who want to program in C++. The examples and exercises require a basic understanding of algorithms and object-oriented software.
Offered by

University of California, Santa Cruz
UC Santa Cruz is an outstanding public research university with a deep commitment to undergraduate education. It’s a place that connects people and programs in unexpected ways while providing unparalleled opportunities for students to learn through hands-on experience.
Frequently Asked Questions
What is the refund policy?
Can I just enroll in a single course?
Is financial aid available?
Can I take the course for free?
Is this course really 100% online? Do I need to attend any classes in person?
Will I earn university credit for completing the Specialization?
How long does it take to complete the Specialization?
What background knowledge is necessary?
Do I need to take the courses in a specific order?
What will I be able to do upon completing the Specialization?
More questions? Visit the Learner Help Center.