This course introduces learners to the fundamental concepts and syntax of C++ programming. Learners will understand basic C++ structure, data types, operators, control flow, and the compilation process. Through hands-on coding exercises, they will develop the essential skills needed to write simple but effective C++ programs and build a foundation for more advanced C++ concepts.



C++ Programming Fundamentals
This course is part of Microsoft Introduction to C++ Programming Professional Certificate

Instructor: Microsoft
Access provided by CDC AMD
Recommended experience
What you'll learn
1. Write, debug, and compile C++ programs that solve real problems.
2. Apply modular and object-oriented programming principles.
Skills you'll gain
Details to know

Add to your LinkedIn profile
November 2025
See how employees at top companies are mastering in-demand skills

Build your Software Development expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate from Microsoft

There are 5 modules in this course
Introduction to C++ Syntax and Structure establishes your foundation in C++ programming by guiding you through essential concepts from writing your first program to implementing professional coding standards. You'll learn to set up a development environment, understand program components including preprocessor directives and namespaces, and write well-structured code using industry-standard style conventions and documentation practices. Through hands-on activities that progress from basic "Hello, World!" programs to multi-component applications, you'll develop skills in reading compiler error messages, debugging structural issues, and refactoring code for improved maintainability. These foundational skills prepare you for real-world development scenarios across diverse fields, including systems programming, game development, and high-performance applications, where clean, properly structured code is essential for team collaboration, debugging efficiency, and long-term project success.
What's included
6 videos6 readings4 assignments6 ungraded labs4 plugins
Data Types and Variables in C++ builds your understanding of how to store, manage, and manipulate data effectively through exploring fundamental data types, variable declaration techniques, and type safety principles. You'll learn to select appropriate data types for different scenarios by understanding memory allocation, value ranges, and the consequences of poor type choices, such as overflow errors in financial calculations or memory inefficiency in gaming applications. Through hands-on activities that range from data type exploration to building interactive programs, such as temperature converters, you'll practice declaring and initializing variables, implementing constants to prevent accidental modifications, accepting user input, and performing safe type conversions while avoiding data loss. These skills are essential for real-world software development, where proper data type selection and variable management directly impact program reliability, memory efficiency, and debugging effectiveness. This is particularly true for applications that demand precision, such as financial systems, games requiring performance optimization, or any application where type-related bugs can compromise functionality and user experience.
What's included
6 videos5 readings4 assignments6 ungraded labs4 plugins
Operators and Control Flow equips you with essential programming logic tools by teaching you how to perform calculations, make decisions, and automate repetitive tasks through operators, conditional statements, and loop structures. You'll learn to build complex expressions using arithmetic, relational, logical, and bitwise operators while understanding precedence rules, implement decision-making logic with if-else and switch statements for handling multiple conditions, and create efficient iterations using for, while, and do-while loops with appropriate control mechanisms. Through hands-on activities that progress from basic operator practice to building functional applications, such as interactive calculators and pattern generators, you'll develop skills in expression evaluation, input validation, nested control structures, and algorithm design. These control flow fundamentals are critical for real-world software development across all domains—from creating menu-driven interfaces and ATM systems that respond dynamically to user choices, to processing large datasets efficiently, to developing games with complex interactive logic—where your ability to automate tasks, handle edge cases, and organize conditional logic directly determines program functionality, user experience quality, and code maintainability.
What's included
6 videos4 readings4 assignments6 ungraded labs4 plugins
Code Creation and Compilation develops your professional development workflow by teaching you systematic problem-solving techniques, compilation mechanics, and effective debugging strategies that transform you from writing individual programs to managing complete software projects. You'll learn to break down complex problems into manageable components using pseudocode and flowcharts, understand the compilation process from preprocessing through linking with multi-file project organization, and apply systematic debugging approaches to efficiently identify and resolve syntax, logical, and runtime errors. Through hands-on activities ranging from algorithm design and translation to exploring compiler flags and tackling comprehensive debugging challenges, you'll develop skills in requirement analysis, defensive programming, project structure organization, and professional debugging workflows using modern tools. These capabilities are essential for real-world software development, where understanding compilation stages improves debugging efficiency, systematic problem-solving reduces development time and errors, proper project organization enables team collaboration on large codebases, and effective debugging skills—the detective work of programming—directly impact your productivity and value as a developer across any industry or application domain.
What's included
6 videos4 readings4 assignments6 ungraded labs4 plugins
The Hands-on Course Project brings together everything you've learned through a comprehensive capstone experience where you design and build a complete command-line utility with multiple integrated features that demonstrate mastery of C++ fundamentals. You'll progress through professional development phases—planning and design with pseudocode and flowcharts, implementation with menu-driven navigation and robust error handling, and testing and refinement using systematic debugging techniques—while creating professional documentation and maintaining code quality throughout. This project simulates real-world development workflows, where you must balance feature complexity with code maintainability, design user-friendly interfaces, validate inputs comprehensively, and thoroughly test edge cases to create reliable, professional-grade applications. These integrated skills prepare you for advanced C++ concepts and professional development environments where employers value your ability to independently design, implement, test, and document complete solutions that solve real problems, while also providing you with a portfolio-worthy application that showcases your fundamental C++ competencies and systematic development practices to potential employers or collaborators.
What's included
1 video3 readings1 assignment1 ungraded lab1 plugin
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Why people choose Coursera for their career




Explore more from Computer Science
¹ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.





