DO NOT DELETE THIS SECTION

Introduction to Programming in C++

CS101 | 3 Credits

Get an introduction to programming in C++ while learning the core computer science concepts like variables, loops, branching, arrays, and functions. This course makes coding approachable and practical, so you can start building real programs.

Professor:

Note: Students can only enroll in a single CS101 course.

C++ programming language logo in a blue hexagonal shape.
$99 + membership
96% Average Pass Rate
28 Day Average Completion
$1.5 Million Saved on Tuition
ACE-RECOMMENDED 2023

About Introduction to Programming in C++

What You’ll Learn

In our Introduction to Programming C++ course, you will learn about the core computer science concepts of variables, branching, loops, arrays/lists, and functions/methods.

  • Use standard input and output, and understand common syntax errors
  • Declare and initialize variables with valid identifiers
  • Develop programs that branch based on user input
  • Combine loops and arrays/lists, and develop programs with multiple arrays/lists
  • Write a function/method, then return from a function/method and parameterize a function
  • Initialize class variables with class constructor
  • Create derived and abstract classes
  • Write a recursive function
  • Use binary search, O notation, and algorithm analysis

StraighterLine Courses Include:

  • Self-paced workload
  • Digital Textbooks
  • Transcript Delivery 
  • Grade Improvement Opportunities
  • Interactive Modules
  • Video Lessons
  • 24/7 Tutoring & Support
  • Access on Desktop and Mobile

Transfer Credit in 3 Easy Steps

Pick Your Course & Enroll 

Getting started is simple — no applications, waitlists, or deadlines. Just create an account, choose your course, and start learning right away.

 

Every course is self-paced and fully online, so you can fit learning into your life — not the other way around. With support resources included and no hidden fees, you're in control from day one.

Go at Your Own Pace

No rigid schedules, no stress. Just real online college courses you can start anytime, anywhere, and finish on your own terms.

 

StraighterLine courses offer interactive lessons and assignments that help you understand and retain the material, and come with everything you need to stay on track and succeed — including digital textbooks, tutoring, and real people to support you on your journey to your degree.

Transfer Your Credits, Save Thousands on Tuition

Complete your course with a 70% or higher to make your credits eligible for transfer. Then head to your Student Dashboard, select “Request Transcript,” and tell us where to send it — we’ll take it from there at no additional cost.

 

Not sure whether your school accepts StraighterLine courses? Our Enrollment Specialists can find out for you!

Talk to an Enrollment Specialist

Does My School Accept This Course?

We’ll find out for you. Students have successfully transferred StraighterLine course credits to 3,000+ schools. Our Enrollment Specialists will contact your college directly to confirm your credits will transfer, so you don’t have to. 

WANT US TO CHECK?

Course Details

CS101
Introduction to Programming in C++
3 Credits

Intro to Programming in C++ teaches you object-oriented programming, covers use pointers and streams, and provides a variety of good coding practices, including iterative development, code formatting, and variable naming schemes.

ACE-Recommended

The American Council on Education (ACE) evaluates and recommends college credit for courses taken outside traditional degree programs. StraighterLine courses are ACE Credit®-recommended, which means they are transferable to over 3,000 colleges and universities nationwide.

ACE Code:

OOSL-0069

Flexible Schedule

28-day Average Course Completion

Transferred 8,500 Times

$1,500,000 Saved on I.T. Tuition

Prerequisites

It is suggested, though not required, that students take Pre-Calculus or its equivalent before enrolling in Introduction to Programming in C++.

Course Text 

There is no text for this course. All materials are included in the course fee.

 

Course Checkpoints

Introduction to Programming in C++

  • Programming (general)
  • Programming basic
  • Comments and whitespace
  • Errors and warnings
  • Computers and programs (general)
  • Computer tour
  • Language history
  • Problem solving
  • Why whitespace matters
  • C++ example: Salary calculation
  • C++ example: Married-couple names

Variables and Expressions

  • Variables and assignments (general)
  • Variables (int)
  • Identifiers
  • Arithmetic expressions (general)
  • Arithmetic expressions (int)
  • Example: Health data
  • Floating-point numbers (double)
  • Scientific notation for floating point literals
  • Constant variables
  • Using math functions
  • Integer division and modulo
  • Type conversions
  • Binary
  • Characters
  • Strings
  • Integer overflow
  • Numeric data types
  • Unsigned Random numbers
  • Debugging Auto (since C++11)
  • Style guidelines
  • C++ example: Salary calculation with variables
  • C++ example: Married-couple names with variables

Branches

  • If-else branches (general)
  • If-else
  • More if-else
  • Equality and relational operators
  • Detecting ranges (general)
  • Detecting ranges with if-else statements
  • Logical operators
  • Order of evaluation
  • Example: Toll calculation
  • Switch statements
  • Boolean data type
  • String comparisons
  • String access operations
  • Character operations
  • More string operations
  • Conditional expressions
  • Floating-point comparison
  • Short circuit evaluation
  • C++ example: Salary calculation with branches
  • C++ example: Search for name using branches

Loops

  • Loops (general)
  • While loops
  • More while examples
  • For loops
  • More for loop examples
  • Loops and strings
  • Nested loops
  • Developing programs incrementally
  • Break and continue
  • Variable name scope
  • Enumerations
  • C++ example: Salary calculation with loops
  • C++ example: Domain name validation with loops

Arrays / Vectors

  • Array concept (general)
  • Vectors
  • Array iteration drill
  • Iterating through vectors
  • Multiple vectors
  • Vector resize
  • Vector push_back
  • Loop-modifying or copying/comparing vectors
  • Swapping two variables (General)
  • Debugging example: Reversing a vector
  • Arrays vs. vectors
  • Two-dimensional arrays
  • Char arrays / C strings
  • String library functions
  • Char library functions: ctype
  • C++ example: Annual salary tax rate calculation with vectors
  • C++ example: Domain name validation with vectors

User-Defined Functions

  • User-defined function basics
  • Return
  • Reasons for defining functions
  • Functions with branches/loops
  • Unit testing (functions)
  • How functions work
  • Functions: Common errors
  • Pass by reference
  • Functions with string/vector parameters
  • Functions with C string parameters
  • Scope of variable/function definitions
  • Default parameter values
  • Function name overloading
  • Parameter error checking
  • Preprocessor and include
  • Separate files
  • C++ example: Salary calculation with functions
  • C++ example: Domain name validation with functions

Objects and Classes

  • Objects: Introduction
  • Using a class
  • Defining a class
  • Inline member functions
  • Mutators, accessors, and private helpers
  • Initialization and constructors
  • Classes and vectors/classes
  • Separate files for classes
  • Choosing classes to create
  • Unit testing (classes)
  • Constructor overloading
  • Constructor initializer lists
  • The ‘this’ implicit parameter
  • Operator overloading
  • Overloading comparison operators
  • Vector ADT
  • Namespaces
  • Static data members and functions
  • C++ example: Salary calculation with classes
  • C++ example: Domain name availability with classes

Pointers

  • Why pointers?
  • Pointer basics
  • Operators: new, delete, and ->
  • String functions with pointers
  • A first linked list
  • Memory regions: Heap/Stack
  • Destructors
  • Memory leaks
  • Copy constructors
  • Copy assignment operator
  • Rule of three
  • C++ example: Employee list using vectors

Streams

  • Output and input streams
  • Output formatting
  • Input string stream
  • Output string stream
  • File input
  • File output
  • C++ example: Parsing and validating input files
  • C++ example: Saving and retrieving program data
  • Overloading stream operators

Inheritance

  • Derived classes
  • Access by members of derived classes
  • Overriding member functions
  • Polymorphism and virtual member functions
  • Abstract classes: Introduction (generic)
  • Abstract classes
  • Is-a versus has-a relationships
  • UML
  • C++ example: Employees and overriding class functions
  • C++ example: Employees using an abstract class

Recursion

  • Recursion: Introduction
  • Recursive functions
  • Recursive algorithm: Search
  • Adding output statements for debugging
  • Creating a recursive function
  • Recursive math functions
  • Recursive exploration of all possibilities
  • Stack overflow
  • C++ example: Recursively output permutations

Exceptions

  • Exception basics
  • Exceptions with functions
  • Multiple handlers
  • C++ example: Generate number format exception

Templates

  • Function templates
  • Class templates
  • C++ example: Map values using a function template
  • Containers
  • Range-based for loop
  • List
  • Pair
  • Map
  • Set
  • Queue
  • Deque
  • find() function
  • sort() function

Searching and Sorting Algorithms

  • Searching and algorithms
  • Binary search
  • O notation
  • Algorithm analysis
  • Sorting: Introduction
  • Selection sort
  • Insertion sort
  • Quicksort
  • Merge sort

Assignments & Grading 

Your score provides a percentage score and letter grade for each course. A passing percentage is 70% or higher.

Assignments for this course include:

  • Midterm Exam
  • Final Exam

This course has an open-book Final Exam. No calculators are permitted.

What You’ll Need 

  • A reliable computer or laptop
  • Stable internet connection
  • Web browser
  • Basic computer skills
  • Scientific or graphing calculator
  • Any required course materials

Your Academic Team 

Your Faculty Team

We’re not just a platform — we’re a team of professional educators committed to your success. Our courses are built by academic professionals who are leaders in higher education, and your assignments are graded by real people who provide meaningful feedback so you can keep progressing.

Support Team

At StraighterLine, there are real people working behind the scenes to guide you through every course, quiz, and “I’m stuck” moment.

  • Enrollment Services
  • On-Demand Tutors
  • Academic Advisors
  • Tech Support

Course Professor

Tutoring & Career Resources

Your StraighterLine membership comes with the tools and guidance you need to thrive academically and take confident steps toward your career.

Blue check mark symbol on a white background.

24/7 live, on-demand tutoring, access via chat or video

Blue check mark symbol on a white background.

Exam and certification prep tools

Blue check mark symbol on a white background.

Faculty Connect portal

Blue check mark symbol on a white background.

24/7 live, on-demand tutoring, access via chat or video

Blue check mark symbol on a white background.

Real, human feedback to help you ace your assignments

Blue check mark symbol on a white background.

Exam and certification prep tools

Blue check mark symbol on a white background.

Real, human feedback to help you ace your assignments

Blue check mark symbol on a white background.

Professional development assistance

Blue check mark symbol on a white background.

Resume-building resources

Blue check mark symbol on a white background.

Professional development assistance

Blue check mark symbol on a white background.

Faculty Connect portal

Blue check mark symbol on a white background.

Resume-building resources

Students who enrolled also took:

Information Technology Fundamentals

1st attempt pass rate: 98%

Avg Days to Complete: 23

3 credits

World History I

1st attempt pass rate: 89%

Avg Days to Complete: 33

3 credits

Introduction to Statistics

1st attempt pass rate: 97%

Avg Days to Complete: 28

3 credits

TRY FOR FREE

Start Your Free Preview

Explore course content, your Student Dashboard, and all the features StraighterLine offers to support your success. No credit card, no commitment — see how easy it is to use StraighterLine.

Get Started Free

Student Reviews

4.6

Transferred in 3 classes from StraighterLine to accredited university

I used Straighterline to take 3 classes (Intro to IT, Calculus, and Intro to C++) that I was able to transfer into an accredited Computer Science program. This service saved me a semester of tuition (a couple hundred bucks spent vs. a few thousand so that's a pretty good deal).

Loki,  StraighterLine Student

Loki,  StraighterLine Student

Go at Your Own Speed Like I Did!

 

Going at my own pace has allowed me to complete two courses within a month while working on my third course at the same time. It’s super fast and easy. My school has already received my transcripts and approved the courses.

Brianna,  StraighterLine Student

Brianna,  StraighterLine Student

My Shortcut to My Degree & Career!

StraighterLine had a big impact on reducing the cost and length of time it took me to get my degree. Plus, I was able to get a full-time job in the industry I wanted to work in.

Kara,  StraighterLine Student

Kara,  StraighterLine Student

Getting Started is Simple

The StraighterLine Advantage

Full flexibility, no timelines or deadlines ever.

Your own support team to get you to the finish line.

Unlimited course access so you can take as many courses as you need.

Transfer guaranteed to one of our 180+ partner schools, and accepted by 3,000+ schools nationwide.

How to Enroll in Introduction to Programming in C++

Select your course and click “Enroll Today”.

Create your account and finalize course purchase.

Start earning affordable college credits!

You’ve Got Questions, We’ve Got Answers

Why is StraighterLine so affordable?

StraighterLine offers a completely online learning experience, free from the high costs of traditional colleges and universities. By cutting out the institutional overhead, we pass the savings onto you (instead of extra costs) — providing top-quality courses at a price that fits with your budget

What is included in the price?

StraighterLine membership gives you access to over 75 self-paced online courses at a fraction of the price you’d pay through your school — meaning you’ll save up to 90% per course. But that’s not all — membership also comes with valuable extras at no extra cost, including academic advising, 24/7 on-demand tutoring, and free transcript delivery to your school

What is ACE, and why does it matter for transfer credits?

StraighterLine courses are recommended for college credit by the American Council on Education (ACE), a respected organization that helps colleges evaluate nontraditional learning for credit. If your school accepts ACE Credit recommendations, there’s a strong chance they’ll accept StraighterLine courses. Always check with your school’s registrar to confirm how transfer credits apply to your degree.

How do I transfer StraighterLine credit?

Transferring your StraighterLine credits is easy:

  1. Check with your school: If you’re enrolled at one of our 180+ partner colleges, your credits are guaranteed to transfer based on which of our courses your school has agreed to directly accept credit for. Plus, StraighterLine credits have also been accepted by over 3,000 colleges and universities, but it’s always a good idea to confirm your school’s transfer policies before enrolling in a course.
  2. Request your transcript: Once you complete a course with a 70% or higher, log into your StraighterLine account to request an official transcript. We’ll send it directly to your school at no extra cost.
  3. Apply your credit: Your school will review your transcript and apply eligibility credits toward your degree, helping you move forward on your academic journey.

Helpful Resources

SUPPORT

Need Help Enrolling?

Our Enrollment Specialists are here to help you get started.

BLOG ARTICLE

How Do StraighterLine Online Courses Work?

Find out what your online learning experience with StraighterLine will be like.

BLOG ARTICLE

Where Can You Transfer StraighterLine Credit?

An easy-to-understand guide on how to transfer StraighterLine credits.

BLOG ARTICLE

How StraighterLine Reduces Tuition Costs

See how StraighterLine has helped students save thousands on tuition.

C++ Your Career in Technology

Introduction to Programming in C++ is a key building block for a career in software development and IT. By learning C++ fundamentals, you’ll gain the coding skills and problem-solving abilities that can set you on the path to roles such as software developer, systems analyst, or IT project manager.

Why it matters:

  • Technology drives every industry, making IT one of the most secure career fields as we rely more on digital systems.
  • Tech professionals have lower unemployment rates, even during broad economic fluctuations.

How this course sets you up for success:

Software Developer, Cybersecurity Analyst, IT Manager, Network Administrator, Systems Analyst, Cloud Engineer, Database Administrator, Web Developer, Information Security Specialist, and Computer Support Specialist

How this course sets you up for success:

Learn the fundamentals of C++ programming to get the foundation you need to succeed in software development and IT careers.

SCRIPT HERE DO NOT DELETE

Added To Cart

Your cart includes: