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.
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!
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
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
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.
24/7 live, on-demand tutoring, access via chat or video
Exam and certification prep tools
Faculty Connect portal
24/7 live, on-demand tutoring, access via chat or video
Real, human feedback to help you ace your assignments
Exam and certification prep tools
Real, human feedback to help you ace your assignments
Professional development assistance
Resume-building resources
Professional development assistance
Faculty Connect portal
Resume-building resources
Students who enrolled also took:
Information Technology Fundamentals
1st attempt pass rate: 98%
Avg Days to Complete: 23
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 FreeStudent Reviews
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).
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.
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.
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:
- 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.
- 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.
- 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