Skip to content
Related Articles

Related Articles

Improve Article

Difference between for and while loop in C, C++, Java

  • Difficulty Level : Easy
  • Last Updated : 27 Jun, 2019

for loop:

for loop provides a concise way of writing the loop structure. Unlike a while loop, a for statement consumes the initialization, condition and increment/decrement in one line thereby providing a shorter, easy to debug structure of looping.

Syntax:

for (initialization condition; testing condition; 
                              increment/decrement)
{
    statement(s)
}

Flowchart:



Example:

C




#include <stdio.h>
  
int main()
{
  
    int i = 0;
  
    for (i = 5; i < 10; i++) {
        printf("GFG\n");
    }
  
    return 0;
}

C++




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

Java




import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
  
        int i = 0;
  
        for (i = 5; i < 10; i++) {
            System.out.println("GfG");
        }
    }
}
Output:
GFG
GFG
GFG
GFG
GFG

while loop:

A while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. The while loop can be thought of as a repeating if statement.
Syntax :

while (boolean condition)
{
   loop statements...
}

Flowchart:
while loop

Example:

C




#include <stdio.h>
  
int main()
{
  
    int i = 5;
  
    while (i < 10) {
        printf("GFG\n");
        i++;
    }
  
    return 0;
}

C++




#include <iostream>
using namespace std;
  
int main()
{
  
    int i = 5;
  
    while (i < 10) {
        i++;
        cout << "GFG\n";
    }
  
    return 0;
}

Java




import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
  
        int i = 5;
  
        while (i < 10) {
            i++;
            System.out.println("GfG");
        }
    }
}
Output:
GFG
GFG
GFG
GFG
GFG

Here are few differences:

For loopWhile loop
Initialization may be either in loop statement or outside the loop.Initialization is always outside the loop.
Once the statement(s) is executed then after increment is done.Increment can be done before or after the execution of the statement(s).
It is normally used when the number of iterations is known.It is normally used when the number of iterations is unknown.
Condition is a relational expression.Condition may be expression or non-zero value.
It is used when initialization and increment is simple.It is used for complex initialization.
For is entry controlled loop.While is also entry controlled loop.
for ( init ; condition ; iteration )
{ statement(s); }
while ( condition )
{ statement(s); }

Attention reader! Don’t stop learning now. Participate in the Scholorship Test for First-Step-to-DSA Course for Class 9 to 12 students.




My Personal Notes arrow_drop_up
Recommended Articles
Page :