Building on the fundamentals, this course explores more complex C++ features including arrays, strings, input/output operations, and functions. Learners will develop modular programming skills and learn to structure their code for reusability and maintainability. The course introduces GenAI tools for code generation to enhance productivity and provides practical experience with file handling and external libraries.


您将学到什么
1. Write, debug, and compile C++ programs that solve real problems.
2. Apply modular and object-oriented programming principles.
您将获得的技能
要了解的详细信息
了解顶级公司的员工如何掌握热门技能

积累 Algorithms 领域的专业知识
- 向行业专家学习新概念
- 获得对主题或工具的基础理解
- 通过实践项目培养工作相关技能
- 通过 Microsoft 获得可共享的职业证书

该课程共有5个模块
Arrays and String Manipulation enhances your C++ capabilities by teaching you to work with collections of data and process text through both legacy and modern approaches, emphasizing safety, performance, and best practices. You'll learn to declare and manipulate single and multi-dimensional arrays using both C-style arrays and modern std::array containers, implement common operations like sorting and searching algorithms, handle matrix-based computations for mathematical applications, and process text efficiently using std::string methods while understanding the security vulnerabilities and limitations of C-style strings. Through hands-on activities progressing from basic array operations to building comprehensive text analyzers and matrix manipulation programs, you'll develop skills in memory layout optimization, bounds checking, Unicode handling for international applications, and selecting appropriate data structures based on safety and performance trade-offs. These intermediate skills are essential for real-world development across diverse domains—from database management and scientific computing that rely on efficient array-based data processing, to game development requiring multi-dimensional coordinate systems and collision detection, to web applications and natural language processing tools that demand secure, efficient text manipulation—where your ability to handle collections of data safely, process text securely, and optimize memory usage directly impacts application performance, security, and reliability in professional software environments.
涵盖的内容
6个视频5篇阅读材料4个作业6个非评分实验室
Input/Output Operations expands your C++ expertise by teaching you to handle data flow between applications and external sources through console interfaces, file systems, and modern I/O techniques, transforming basic programs into production-ready systems. You'll learn to create professional console applications with advanced stream manipulators for formatting precision and alignment, implement robust input validation with comprehensive error handling, manage file operations for reading and writing both text and binary data using C++17's filesystem API, and leverage modern C++20/C++23 features including std::format and std::print for type-safe, simplified output operations. Through hands-on activities progressing from formatted report generators to data logger applications and comprehensive input validation systems, you'll develop skills in stream state management, error recovery strategies, complex data format parsing, and user interface design that balances functionality with accessibility. These I/O capabilities are fundamental for real-world applications across all domains—from system administration tools and backup systems that require reliable file handling, to data processing pipelines and business reporting applications demanding professional formatting and validation, to production systems processing structured data formats like CSV and JSON—where your ability to safely read external data, gracefully handle errors, persist information reliably, and present output professionally determines application robustness, data integrity, and user experience quality.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
Functions and Modular Programming transforms your approach to software development by teaching you to create reusable, maintainable code through function design, advanced function techniques, and systematic code organization strategies that enable scalable application architecture. You'll learn to design functions with optimal parameter passing methods for performance and clarity, implement function overloading to create versatile interfaces, apply recursion to solve algorithmic problems while comparing recursive and iterative approaches, and organize code using namespaces and modern C++20 modules to prevent naming conflicts and improve project structure. Through hands-on activities progressing from basic function creation to refactoring monolithic programs into modular architectures and implementing recursive algorithms with performance analysis, you'll develop skills in code reusability, interface design, stack frame analysis, separation of concerns, and architectural decision-making. These modular programming principles are essential for professional software development across all industries—from game development and web applications requiring team collaboration on shared codebases, to large enterprise systems demanding clear organizational hierarchies and conflict prevention, to API design where intuitive function interfaces determine developer experience—where your ability to eliminate code duplication, create maintainable function-based architectures, and organize complex projects systematically directly impacts development efficiency, team productivity, code quality, and long-term software maintainability in collaborative professional environments.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
External Libraries and GenAI for Code Generation elevates your development capabilities by teaching you to extend application functionality through third-party libraries and leverage modern AI coding assistants to accelerate development while maintaining professional quality standards. You'll learn to discover, evaluate, and integrate external C++ libraries using modern build systems, including CMake, vcpkg, and Conan for dependency management, understand static versus dynamic linking and proper header file organization, and effectively use AI tools like GitHub Copilot, ChatGPT, and Claude to generate code snippets, functions, and program components while critically evaluating their output. Through hands-on activities that progress from library integration projects to AI-assisted development workflows, you'll develop skills in building system configuration, dependency resolution, quality assurance for AI-generated code, code adaptation and refactoring, and establishing collaborative development practices that balance AI assistance with human expertise. These modern development capabilities are transformative for professional software engineering—from integrating powerful libraries for JSON parsing, HTTP communication, or graphics rendering that would take months to build independently, to using AI tools that accelerate routine coding tasks and reduce boilerplate while you maintain critical oversight for correctness and style—where your ability to leverage existing solutions, manage complex dependencies, critically evaluate AI assistance, and integrate modern tools into workflows directly impacts development velocity, project scope possibilities, code quality maintenance, and your competitiveness in contemporary software development environments that increasingly expect proficiency with both external libraries and AI-assisted coding practices.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
The Hands On Course Project synthesizes your intermediate C++ expertise through a comprehensive capstone experience where you design and build a sophisticated data processing application that integrates arrays and string manipulation, file I/O operations, modular function architecture, external library integration, and AI-assisted development workflows into a cohesive, professional-quality solution. You'll progress through industry-standard development phases—systematic design and planning with detailed architecture specifications and library selection, implementation, applying all intermediate concepts with modern AI assistance for code generation and optimization, and comprehensive testing, including unit tests, integration tests, and performance analysis with AI-powered code review. This capstone experience simulates real-world intermediate-level development scenarios found in business applications, scientific computing systems, and data analysis platforms where multiple technical skills must work together seamlessly to solve complex problems. The project culminates in professional deliverables including complete source code, technical documentation, testing reports, user guides, and an AI integration analysis that collectively demonstrate your readiness for advanced C++ programming challenges and intermediate-level professional software development roles, while providing portfolio-worthy evidence of your ability to independently design, implement, test, document, and optimize complete applications using modern development practices that balance human expertise with AI assistance for maximum productivity and code quality.
涵盖的内容
1个视频3篇阅读材料1个作业1个非评分实验室
获得职业证书
将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。
从 Algorithms 浏览更多内容
状态:免费试用Microsoft
状态:免费试用
状态:免费试用
状态:免费试用
人们为什么选择 Coursera 来帮助自己实现职业发展




常见问题
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
更多问题
提供助学金,
¹ 本课程的部分作业采用 AI 评分。对于这些作业,将根据 Coursera 隐私声明使用您的数据。





