We may earn an affiliate commission when you visit our partners.
Course image
Vladislav Nevstruev, Vladimir Kurenkov, Oleg Hristenko, and Filipp Rukhovich
C and C++ are the most popular programming languages in competitive programming, the most convenient and frequently used in competitions. The «C/C++ for competitive programming» online course will introduce the basic concepts of the language, such as...
Read more
C and C++ are the most popular programming languages in competitive programming, the most convenient and frequently used in competitions. The «C/C++ for competitive programming» online course will introduce the basic concepts of the language, such as variables, data types, conditionals, loops, functions, and others. There are five modules in the course — each for one week of education. Program Modules: Module 1: Variables Module 2: Conditional operators and Cycles Module 3: Arrays and Functions Module 4: Complex data structures Module 5: Basic low-level features and numeral systems
Enroll now

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Intends to introduce the basic concepts of C and C++ programming languages, such as variables, data types, conditionals, loops, functions, and others
Designed for competitive programmers, as C and C++ are the most popular and frequently used in competitions
May help learners get started with competitive programming, as it covers the basics of C and C++ programming languages
Learners can expect to improve their understanding of the core concepts of C and C++ programming languages

Save this course

Save С/C++ for competitive programming to your list so you can find it easily later:
Save

Reviews summary

Mixed bag for c/c++

Mixed feelings from learners on this course with feedback ranging from excellent to poor. While the course is well-structured and covers important fundamentals, inconsistent teaching quality and language barriers, technical issues, and buggy assessments.
Covers important C/C++ fundamentals.
"The «C/C++ for competitive programming» online course will introduce the basic concepts of the language"
Inactive moderators on discussion forums.
"T​he course content is good, but mods are not active on discussion forums"
Language barrier for non-native speakers.
"The course level is overall very good but the language is sometimes hard to understand."
"Course is nice but I am not understanding American English"
Compiler issues and buggy assessments.
"Compiler doesn't work. Correct programs aren't giving output."
"This is a very good course with the only drawback being that the test suite for certain practice exercises is buggy"
Inconsistent teaching quality.
"teaching is not so good"
"Worst course I've ever seen"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in С/C++ for competitive programming with these activities:
Review C/C++ syntax and basic algorithms
Refresh your memory on C/C++ syntax and basic algorithms to ensure a strong foundation for the course content.
Browse courses on C Programming
Show steps
  • Review lecture notes or online resources on C/C++ syntax
  • Practice writing simple C/C++ programs to implement basic algorithms
Revisit pre-requisite concepts
Refresh your knowledge of essential C programming concepts, including variables and data types, to strengthen your foundation for this course.
Browse courses on C Programming
Show steps
  • Review lecture notes or online resources on C programming basics
  • Complete practice exercises on variable declaration and data type conversion
Join study groups or online forums
Engage with peers in study groups or online forums to discuss course concepts, share knowledge, and provide mutual support.
Show steps
  • Join online discussion forums dedicated to C/C++ programming
  • Participate in study groups with classmates or fellow learners
Five other activities
Expand to see all activities and additional details
Show all eight activities
Practice coding challenges
Engage in coding challenges to reinforce your understanding of conditional statements, loops, and functions covered in this course.
Browse courses on Conditionals
Show steps
  • Solve coding problems on platforms like LeetCode or HackerRank
  • Participate in online coding competitions
Explore external tutorials and resources
Enhance your learning by exploring additional tutorials and resources online to supplement the course materials and gain a deeper understanding of concepts.
Browse courses on C Programming
Show steps
  • Search for tutorials on specific topics related to the course
  • Watch video tutorials or read articles to expand your knowledge
Develop a C/C++ codebase
Build a C/C++ codebase as a practical application of your learning, allowing you to apply concepts and techniques covered in the course.
Browse courses on Project Development
Show steps
  • Identify a project idea that aligns with the course content
  • Design and implement the project using C/C++
  • Test and debug your codebase thoroughly
Participate in coding competitions
Challenge yourself by participating in coding competitions, which provide an excellent opportunity to test your skills, learn from others, and enhance your problem-solving abilities.
Browse courses on Competitive Programming
Show steps
  • Register for online coding competitions
  • Practice solving problems on the competition platform
  • Participate in competitions and strive to improve your ranking
Mentor junior learners or peers
Reinforce your understanding of the course concepts by mentoring junior learners or peers, providing guidance and support while strengthening your own knowledge.
Browse courses on Mentorship
Show steps
  • Identify junior learners or peers who need support
  • Provide guidance and assistance on C/C++ programming concepts
  • Review and provide feedback on their code

Career center

Learners who complete С/C++ for competitive programming will develop knowledge and skills that may be useful to these careers:
C++ Developer
C++ Developers are responsible for writing, testing, and maintaining C++ code. They work on a variety of projects, including operating systems, embedded systems, and enterprise software. This course can help C++ Developers build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for C++ Developers to understand.
Software Engineer
Software Engineers design, develop, and maintain software systems. They work on a variety of projects, including web applications, mobile apps, and desktop applications. This course can help Software Engineers build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Software Engineers to understand.
Data Scientist
Data Scientists use data to solve problems and make informed decisions. They work on a variety of projects, including fraud detection, customer segmentation, and predictive analytics. This course can help Data Scientists build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Data Scientists to understand.
Machine Learning Engineer
Machine Learning Engineers design, develop, and deploy machine learning models. They work on a variety of projects, including image recognition, natural language processing, and predictive analytics. This course can help Machine Learning Engineers build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Machine Learning Engineers to understand.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical models to analyze financial data and make investment decisions. They work on a variety of projects, including risk management, portfolio optimization, and trading. This course can help Quantitative Analysts build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Quantitative Analysts to understand.
Data Engineer
Data Engineers design, build, and maintain data pipelines. They work on a variety of projects, including data integration, data warehousing, and big data analytics. This course can help Data Engineers build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Data Engineers to understand.
Software Architect
Software Architects design and develop the overall architecture of software systems. They work on a variety of projects, including web applications, mobile apps, and desktop applications. This course can help Software Architects build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Software Architects to understand.
DevOps Engineer
DevOps Engineers build and maintain software systems. They work on a variety of projects, including web applications, mobile apps, and desktop applications. This course can help DevOps Engineers build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for DevOps Engineers to understand.
Systems Analyst
Systems Analysts design and develop computer systems. They work on a variety of projects, including network infrastructure, database systems, and operating systems. This course can help Systems Analysts build a strong foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Systems Analysts to understand.
Technical Writer
Technical Writers write documentation for software and hardware products. They work on a variety of projects, including user manuals, technical specifications, and marketing materials. This course may help Technical Writers build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Technical Writers to understand.
Product Manager
Product Managers manage the development and launch of new products. They work on a variety of projects, including hardware, software, and consumer goods. This course may help Product Managers build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Product Managers to understand.
Marketing Manager
Marketing Managers plan and execute marketing campaigns. They work on a variety of projects, including advertising, public relations, and social media. This course may help Marketing Managers build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Marketing Managers to understand.
Business Analyst
Business Analysts analyze business processes and develop solutions to improve efficiency. They work on a variety of projects, including process improvement, data analysis, and financial modeling. This course may help Business Analysts build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Business Analysts to understand.
Entrepreneur
Entrepreneurs start and run their own businesses. They work on a variety of projects, including product development, marketing, and sales. This course may help Entrepreneurs build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Entrepreneurs to understand.
Consultant
Consultants provide advice and expertise to businesses and organizations. They work on a variety of projects, including strategy development, process improvement, and financial planning. This course may help Consultants build a foundation in the C++ programming language and its core concepts like variables, conditionals, loops, functions, and data structures. The course will also introduce basic low-level features and numeral systems that are essential for Consultants to understand.

Reading list

We've selected 12 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in С/C++ for competitive programming.
Provides a comprehensive overview of competitive programming and covers topics such as algorithms, data structures, and problem-solving techniques. It valuable resource for both beginners and experienced programmers.
This classic book provides a comprehensive overview of fundamental algorithms and data structures. It valuable resource for both beginners and experienced programmers.
Comprehensive introduction to algorithms and data structures. It valuable resource for both beginners and experienced programmers.
Provides a comprehensive overview of data structures and algorithms in C++. It valuable resource for both beginners and experienced programmers.
Continuation of the Effective C++ book and provides 35 new ways to improve your C++ programs and designs. It valuable resource for experienced programmers who want to improve their C++ skills.
Is the definitive reference on the C++ programming language. It valuable resource for both beginners and experienced programmers.
Comprehensive introduction to C++ programming. It valuable resource for both beginners and experienced programmers.
Provides a comprehensive overview of C++ programming. It valuable resource for both beginners and experienced programmers.
Provides a fast-paced introduction to C++ programming. It valuable resource for experienced programmers who want to learn C++ quickly.
Provides a comprehensive overview of C++ concurrency. It valuable resource for experienced programmers who want to learn more about this advanced C++ topic.
Provides a comprehensive overview of C++ design patterns and best practices. It valuable resource for experienced programmers who want to improve their C++ coding skills.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser