EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Loops in C++

Home » Software Development » Software Development Tutorials » C ++ Programming Tutorial » Loops in C++

Loops-in-C++

Introduction to Loops in C++

Loop statements in C++ execute the certain block of the code or statement multiple times, mainly used to reduce the length of the code by executing the same function multiple times, reduce the redundancy of the code. C++ supports various types of loops like for loop, while loop, do-while loop, each has its own syntax, advantages, and usage.

In the programming world, the loop is a control structure that is used when we want to execute a block of code, multiple times. It usually continues to run until and unless some end condition is fulfilled.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

If we did not have loops, we would have to use the iterative method to print a repetitive block of statements, which would look something like this:

#include <iostream>
using namespace std;
int main()
{
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
}

Output:

Loops in C++ 1

In this example, we have printed “Good morning” five times by repeating the same set of lines.

A loop has a certain set of instructions. In a loop, we use a counter to check the condition for loop execution. In cases when the counter has not yet attained the required number, the control returns to the first instruction in the sequence of instructions and continues to repeat the execution of the statements in the block. If the counter has reached the required number, that means the condition has been fulfilled, and control breaks out of the Loop of statements and comes outside of the loop, to the remaining block of code.

Types of Loops in C++

Now that we have seen how a Loop works, let us make it clearer by going through the types of Loops out there. In C++ programming, we have three types of Loops in C++ :

Popular Course in this category
C++ Training (4 Courses, 5 Projects, 4 Quizzes)4 Online Courses | 5 Hands-on Projects | 37+ Hours | Verifiable Certificate of Completion | Lifetime Access | 4 Quizzes with Solutions
4.5 (4,837 ratings)
Course Price

View Course

Related Courses
Java Training (40 Courses, 29 Projects, 4 Quizzes)C Programming Training (3 Courses, 5 Project)
  • For Loop
  • While Loop
  • Do While Loop

For Loop

Loop is an entry controlled loop, meaning that the condition specified by us is verified before entering the loop block. It is a repetition control structure. The loop written by us is run a specified number of times.

To control the loop, we use a loop variable in For loop. This variable is first initialized to some value, then we perform the check on this variable comparing it to the counter variable, and finally, we update the loop variable.

Syntax:

for(initialization expression; test expression; update expression)
{
// statements to execute in the loop body
}

Initialization Expression:

Here we initialize the loop variable to a particular value. For example, int i=1;

Test Expression:

Here, we write the test condition. If the condition is met and returns true, we execute the body of the loop and update the loop variable. Otherwise, we exit the For loop. An example for test expression is i <= 5;

Update Expression:

Once the body of the loop has been executed, we increment or decrement the value of the loop variable in the update expression. For example, i++;

Let us look at an example of For loop:

#include <iostream>
using namespace std;
int main()
{
for (int i = 1; i <= 5; i++)
{
cout << " Good morning \n";
}
return 0;
}

Output:

Loops in C++ 1

While Loop

While loop is also an entry controlled loop, where we verify the condition specified by us, before running the loop. The difference is being that we use For loops when we know the number of times the body of the loop needs to run, whereas we use while loops in circumstances when beforehand we do not know the precise number of times the body of the loop needs to run. The execution of the loop is terminated based on the test condition.

Syntax:

initialization expression;

while (test_expression)
{
// statements to execute in the loop body
update_expression;
}

The syntax of the loops differs only in the placement of the three expression statements.

Let us look at an example of while loop:

#include <iostream>
using namespace std;
int main()
{
int i = 0;    // initialization expression
while (i < 5)   // test expression
{
cout << "Good morning\n";
i++;    // update expression
}
return 0;
}

Output:

Loops in C++ 1

Do While Loop

Do while loop is an exit controlled loop, meaning the test condition is verified after the execution of the loop, at the end of the body of the loop. Hence, the body executes at least once, regardless of the result of the test condition, whether it is true or false. This happens to be the foremost difference in between while loop and do while. In while loop, the condition is tested beforehand, whereas in do while loop the condition is verified at the finish of body of the loop.

Syntax:

initialization expression;

do
{
// statements to execute in the loop body
update_expression;
} while (test_expression);

In do while loop, we end the body of the loop with a semicolon, whereas the other two loops do not have any semicolon to end the body of their loops.

#include <iostream>
using namespace std;
int main()
{
int i = 2;    // initialization expression
do
{
cout << " Good morning\n";
i++;       // update expression
} while (i < 1);  // test expression
return 0;
}

Output:

Loops in C++ 2

In the above-given code, the test condition says I should be less than 1 (i<1), but still the loop executes at least once, before checking for the condition, hence giving us the output “Good morning” one time.

Infinite Loop

An infinite loop or an endless loop is a loop that does not have a proper exit condition for the loop, making it run infinitely. This happens when the test condition is not written properly and it permanently evaluates to true. This is usually an error in the program.

#include <iostream>
using namespace std;
int main ()
{
int i;
for ( ; ; )
{
cout << "This loop runs indefinitely.\n";
}
}

Output:

Loops in C++ 3

In this example, we have failed to mention any test expression and have left it blank; therefore this loop will run indefinitely until manually terminated.

Conclusion – Loops in C++

In this article, we have seen the various loops used in C++. Each of these loops has different benefits. We use loop when we know the number of times we need to run the loop, we use while loop when we know the condition for termination, but we do not know the precise number of iterations and we use do while loop when we need the code to execute at least once as in menu programs.

Recommended Articles

This is a guide to the Loops in C++. Here we also discuss different types of loops in C++ with syntax and example. You may also have a look at the following articles to learn more –

  1. C++ String Functions
  2. Star Patterns In c++
  3. Loops in VBScript
  4. Loops in PowerShell

C++ Training (4 Courses, 3 Projects, 4 Quizzes)

4 Online Courses

5 Hands-on Projects

37+ Hours

Verifiable Certificate of Completion

Lifetime Access

4 Quizzes with Solutions

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
C plus plus Programming Tutorial
  • Control Statements
    • Control Statement in C++
    • if else Statement in C++
    • Else If in C++
    • Nested if in C++
    • Continue Statement in C++
    • Break Statement in C++
    • Switch Statement in C++
    • goto Statement in C++
    • C++ Struct
    • Loops in C++
    • Do While Loop in C++
    • Nested Loop in C++
  • Basic
    • Introduction To C++
    • What is C++
    • Features of C++
    • Applications of C++
    • Best C++ Compiler
    • C++ Data Types
    • C++ Double
    • C++ unsigned int
    • User Defined Data Types in C++
    • Variables in C++
    • C++ Keywords
    • Pointers in C++
    • C++ Void Pointer
    • Function Pointer in C++
    • Iterator in C++
    • C++ Commands
    • Object in C++
    • C++ Literals
    • C++ Reference
    • C++ Undefined Reference
    • String in C++
    • C++ Programming Language (Basics)
    • C++ Identifiers
    • C++ Header Files
    • Type Casting in C++
    • C++ Formatter
  • Operators
    • C++ Operators
    • Arithmetic Operators in C++
    • Assignment Operators in C++
    • Bitwise Operators in C++
    • Relational Operators in C++
    • Boolean Operators in C++
    • Unary Operators in C++
    • C++ Operator[]
    • Operator Precedence in C++
    • C++ operator=()
  • Functions
    • C++ String Functions
    • Math Functions in C++
    • Friend Function in C++
    • Recursive Function in C++
    • Virtual Functions in C++
    • strcat() in C++
    • swap() in C++
    • strcmp() in C++
    • ceil function in C++
    • C++ begin()
    • size() in C++
    • C++ test()
    • C++ any()
    • C++ Bitset
    • C++ find()
    • C++?Aggregation
    • C++?String append
    • C++ String Copy
    • C++ end()
    • C++ endl
    • C++ push_back
    • C++ shuffle()
    • malloc() in C++
    • C++ reserve()
    • C++ unique()
    • C++ sort()
    • C++ find_if()
    • Reflection in C++
    • C++ replace()
    • C++ search()
    • C++ Memset
    • C++ size_t
    • C++ Substring
    • C++ Max
    • C++ absolute value
    • C++ memcpy
    • C++ wchar_t
    • C++ free()
    • C++ sizeof()
    • C++ Move Semantics
  • Array
    • Arrays in C++
    • 2D Arrays in C++
    • 3D Arrays in C++
    • Multi-Dimensional Arrays in C++
    • C++ Array Functions
    • String Array in C++
    • C++ Length of Array
    • C++ arraylist
  • Constuctor and Destructor
    • Constructor and Destructor in C++
    • Constructor in C++
    • Destructor in C++
    • Copy Constructor in C++
    • Parameterized Constructor in C++
  • Overloading and overriding
    • Overloading and Overriding in C++
    • Overloading in C++
    • Overriding in C++
    • Function Overloading in C++
    • Function Overriding in C++
    • Method Overloading in C++
  • Inhertiance
    • Types of Inheritance in C++
    • Single Inheritance in C++
    • Multiple Inheritance in C++
    • Hierarchical Inheritance in C++
    • Multilevel Inheritance in C++
    • Hybrid Inheritance in C++
  • Sorting
    • Sorting in C++ 
    • Heap Sort in C++
    • C++ Vector Sort
    • Insertion Sort in C++
    • Selection Sort in C++
  • Advanced
    • C++ namespace
    • Encapsulation in C++
    • Access Modifiers in C++
    • Abstract Class in C++
    • C++ Class and Object
    • What is Template Class in C++?
    • C++ Algorithm
    • Data Structures and Algorithms C++
    • C++ Garbage Collection
    • Virtual Keyword in C++
    • Access Specifiers in C++
    • Storage Class in C++
    • Call by Value in C++
    • Multimap in C++
    • C++ Multiset
    • C++ Lambda Expressions
    • Stack in C++
    • C++ Static
    • C++ static_cast
    • Deque in C++
    • C++ Vector Functions
    • C++ 2D Vector
    • C++ List
    • C++ Mutable
    • Enum in C++
    • Abstraction in C++
    • Signal in C++
    • C++ Queue
    • Priority Queue in C++
    • Regular Expressions in C++
    • C++ Hash Table
    • File Handling in C++
    • C++ Stream
    • ifstream in C++
    • C++ ofstream
    • C++ fstream
    • C++ Read File
    • C++ iomanip
    • Macros in C++
    • Templates in C++
    • C++ setprecision
    • C++ Int to String
    • C++ thread( )
    • C++ Thread Pool
    • C++ thread_local
  • Programs
    • Patterns in C++
    • Star Patterns In c++
    • Swapping in C++
    • Reverse Number in C++
    • Palindrome Program in C++
    • Palindrome in C++
    • Factorial Program in C++
    • Fibonacci Series in C++
    • Square Root in C++
    • Random Number Generator in C++
    • Prime Number in C++
    • Leap Year Program in C++
    • Anagram in C++
    • Armstrong Number in C++
    • Reverse String in C++
    • Socket Programming in C++
    • Matrix Multiplication in C++
    • C++ using vs typedef
    • C++ vector vs list
    • C++ vector vs array
  • Interview question
    • C++ Interview Questions
    • Multithreading Interview Questions C++

Related Courses

C++ Training Course

Java Training Course

C Programming Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - C++ Training (4 Courses, 3 Projects, 4 Quizzes) Learn More